Android在Application层级维护和管理全局所有Activity的方法ActivityLifecycleCallbacks

Android在Application层级维护和管理全局所有Activity的方法ActivityLifecycleCallbacks

经常看到有些项目中经常性的把所有activity继承自一个base的Activity,然后在每一次启动新activity时候添加当前activity到一个全局List那样的列表中,已达到全局管理和维护activity的目的,这种做法大概是四五年前的技术解决方案。如今谷歌Android官方推出了ActivityLifecycleCallbacks,ActivityLifecycleCallbacks是在Application层级的接口回调,App中所有的任何一个Activity的生命周期方法被触发时候,都会进入相应的ActivityLifecycleCallbacks生命周期里面,例如:

package zhangphil.test;

import android.app.Activity;
import android.app.Application;
import android.os.Bundle;

import com.orhanobut.logger.AndroidLogAdapter;
import com.orhanobut.logger.Logger;

public class MyApp extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
        //Logger初始化。
        Logger.addLogAdapter(new AndroidLogAdapter());


        this.registerActivityLifecycleCallbacks(new ActivityLifecycleCallbacks(){

            @Override
            public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
                //一个App所有的任何一个Actvity进入生命周期的onCreate后会回调这个方法。
            }

            @Override
            public void onActivityStarted(Activity activity) {
                //一个App所有的任何一个Actvity进入生命周期的onStart后会回调这个方法。
            }

            @Override
            public void onActivityResumed(Activity activity) {
                //一个App所有的任何一个Actvity进入生命周期的onResumed后会回调这个方法。
            }

            @Override
            public void onActivityPaused(Activity activity) {
                //一个App所有的任何一个Actvity进入生命周期的onPaused后会回调这个方法。
            }

            @Override
            public void onActivityStopped(Activity activity) {
                //一个App所有的任何一个Actvity进入生命周期的onStopped后会回调这个方法。
            }

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

            }

            @Override
            public void onActivityDestroyed(Activity activity) {
                //一个App所有的任何一个Actvity进入生命周期的onDestroyed后会回调这个方法。
            }
        });
    }
}

猜你喜欢

转载自blog.csdn.net/zhangphil/article/details/80769738
今日推荐