Android 集中处理Activity的生命周期事件: Application.ActivityLifecycleCallbacks

来源:互联网 发布:我在底层的生活 知乎 编辑:程序博客网 时间:2024/06/06 08:56

ActivityLifecycleCallbacks可以用来集中处理Activity的生命周期事件。API Level 14之后,开始支持。

其声明在Application中:

    public interface ActivityLifecycleCallbacks {        void onActivityCreated(Activity activity, Bundle savedInstanceState);        void onActivityStarted(Activity activity);        void onActivityResumed(Activity activity);        void onActivityPaused(Activity activity);        void onActivityStopped(Activity activity);        void onActivitySaveInstanceState(Activity activity, Bundle outState);        void onActivityDestroyed(Activity activity);    }

上面的方法,一看名字应该就能猜出意思了。就不多说了

调用Application#registerActivityLifecycleCallbacks(ActivityLifecycleCallbacks callback),注册事件处理类。一般在Application#onCreate()中注册。

调用unregisterActivityLifecycleCallbacks(ActivityLifecycleCallbacks callback)反注册。不过Application并没有onDestroy之类的方法,所以这句一般可能不显示调用。

统一处理方式:打印日志;Activity入栈、出栈;统计;等等

0 0