您的位置:首页 > 移动开发 > Android开发

Android 监控应用中所有Activity 的生命周期

2017-12-21 11:28 183 查看
众所周知,我们可以在Activity 里面监控当前Activity 的生命周期,比如onResume() ,onCreate() 等等。如果想监控所有Activity 的生命周期呢?你可能会说那在BaseActivity 里面去写啊,用集合记录。当然这能做到,可是有没有更简单的办法呢?

其实我们可以在Application 的onCreate() 里去注册一个监听:
public class MyApplication extends Application {
public static MyApplication app;

@Override
public void onCreate() {
super.onCreate();
app = this;

this.registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks() {
@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
// Log.v("tag_2","onActivityCreated" + activity.getClass().getName());
}

@Override
public void onActivityStarted(Activity activity) {

}

@Override
public void onActivityResumed(Activity activity) {

}

@Override
public void onActivityPaused(Activity activity) {

}

@Override
public void onActivityStopped(Activity activity) {

}

@Override
public void onActivitySaveInstanceState(Activity activity, Bundle outState) {

}

@Override
public void onActivityDestroyed(Activity activity) {
// Log.v("tag_2","onActivityDestroyed" + activity.getClass().getName());
}
});
}
}这样就可以监控整个应用的生命周期了。还可以做到判断当前应用是否在后台。具体能做什么,你可以发挥你的想象了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: