监听应用的前后台切换

public class LifecycleCallback implements Application.ActivityLifecycleCallbacks {
    private static final String TAG = "LifecycleCallback";
    private int count; 
    private boolean isForeground; 

    public boolean isForeground() {
        return isForeground; 
    }
     
     /**
     * 运行在主线程,如果需要添加一些相对耗时的操作,最好是在子线程操作
     */
    @Override 
    public void onActivityStarted(Activity activity) { 
        count ++; 
         isForeground = false; 
    }
    @Override 
    public void onActivityStopped(Activity activity) { 
        count --; 
        if(count == 0) {
            isForeground = true; 
        }else{
            isForeground = false; 
        }
    }
public class MyApplication extends Application {
    @Override 
    public void onCreate() {
        super.onCreate(); 
        //注册回调
        LifecycleCallback callbacks = new LifecycleCallback();
        registerActivityLifecycleCallbacks(callbacks); 
    }
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。