分享一個利用ActivityLifecycleCallbacks 監聽android Activity 生命周期的方法。
實現步驟如下:
1、實現ActivityLifecycleCallbacks.java 類在對應的生命周期方法里面實現自己需要做的事情 (我這里只打印一個Log)。
public class ActivityLifecycle implements Application.ActivityLifecycleCallbacks {
private static final String TAG = "ActivityLife";
@Override
public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
android.util.Log.d(TAG,activity.getClass().getSimpleName()+"...onCreate");
}
@Override
public void onActivityResumed(Activity activity) {
android.util.Log.d(TAG,activity.getClass().getSimpleName()+"...onResumed");
}
@Override
public void onActivityPaused(Activity activity) {
android.util.Log.d(TAG,activity.getClass().getSimpleName()+"...onPaused");
}
@Override
public void onActivityStopped(Activity activity) {
android.util.Log.d(TAG,activity.getClass().getSimpleName()+"...onStopped");
}
@Override
public void onActivitySaveInstanceState(Activity activity, Bundle outState) {
android.util.Log.d(TAG,activity.getClass().getSimpleName()+"...onSaveInstanceState");
}
@Override
public void onActivityDestroyed(Activity activity) {
android.util.Log.d(TAG,activity.getClass().getSimpleName()+"...onActivityDestroyed");
}
}
2、繼承Applicaton 在onCreate 方面里面注冊下即可:
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
registerActivityLifecycleCallbacks(new ActivityLifecycle());
}
}
3、接下來看下打印的Log
01-01 15:14:59.869 7484-7484/com.transsion.androiddemofactory D/ActivityLife: MainActivity...onCreate
01-01 15:14:59.908 7484-7484/com.transsion.androiddemofactory D/ActivityLife: MainActivity...onStarted
01-01 15:14:59.913 7484-7484/com.transsion.androiddemofactory D/ActivityLife: MainActivity...onResumed
01-01 15:15:03.511 7484-7484/com.transsion.androiddemofactory D/ActivityLife: MainActivity...onPaused
01-01 15:15:04.072 7484-7484/com.transsion.androiddemofactory D/ActivityLife: MainActivity...onStopped
01-01 15:15:06.412 7484-7484/com.transsion.androiddemofactory D/ActivityLife: MainActivity...onCreate
01-01 15:15:06.450 7484-7484/com.transsion.androiddemofactory D/ActivityLife: MainActivity...onStarted
01-01 15:15:06.454 7484-7484/com.transsion.androiddemofactory D/ActivityLife: MainActivity...onResumed
01-01 15:15:54.377 7484-7484/com.transsion.androiddemofactory D/ActivityLife: MainActivity...onPaused
01-01 15:15:54.382 7484-7484/com.transsion.androiddemofactory D/ActivityLife: MainActivity...onSaveInstanceState
01-01 15:15:54.398 7484-7484/com.transsion.androiddemofactory D/ActivityLife: MainActivity...onStopped
就這么簡單的完成了對activity 生命周期的監聽是不是很簡單呢! 笑臉.jpg