Android ActivityLifecycle 生命周期管理

748 阅读1分钟
一些常用的功能实现需要ActivityLifecycle 生命周期回调才能更好的实现:
  1. 应用切换或被三方应用遮挡时,需要给出提示;
  2. 业务流程需要在A-B-C-D-...-Z 时,关闭D-Z过程的界面;

  • 自定义ActivityLifecycle生命周期回调单例实现类
public class ActivityManager implements Application.ActivityLifecycleCallbacks {    private static final class ActivityManagerHolder {        private static final ActivityManager INSTANCE = new ActivityManager();    }    public static ActivityManager getInstance() {        return ActivityManagerHolder.INSTANCE;    }    @Override    public void onActivityCreated(Activity activity, Bundle savedInstanceState) {    }    @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) {    }}

  • 自定义MainApplication注册ActivityLifecycleCallbacks

public class MainApplication extends Application {    @Override    public void onCreate() {        super.onCreate();        registerActivityLifecycleCallbacks(ActivityManager.getInstance());    }}