ProcessLifecycleOwner monitors the application lifecycle

ProcessLifecycleOwner listens to the application lifecycle.
It monitors the entire application and has nothing to do with the number of activity points.
Lifecycle.Event.ON_CREATE will only be called once, Lifecycle.Event.ON_DESTROY will never be called.

public class MyApplicationObserver implements LifecycleObserver {
    
    

    private static final String TAG = "MyApplicationObserver";

    @OnLifecycleEvent(Lifecycle.Event.ON_CREATE)
    public void onCreate() {
    
    
        Log.d(TAG, "onCreate: Lifecycle.Event.ON_CREATE");
    }

    @OnLifecycleEvent(Lifecycle.Event.ON_START)
    public void onStart() {
    
    
        Log.d(TAG, "onCreate: Lifecycle.Event.ON_START");
    }

    @OnLifecycleEvent(Lifecycle.Event.ON_STOP)
    public void onStop() {
    
    
        Log.d(TAG, "onCreate: Lifecycle.Event.ON_STOP");
    }

    @OnLifecycleEvent(Lifecycle.Event.ON_PAUSE)
    public void onPause() {
    
    
        Log.d(TAG, "onCreate: Lifecycle.Event.ON_PAUSE");
    }

    @OnLifecycleEvent(Lifecycle.Event.ON_RESUME)
    public void onResume() {
    
    
        Log.d(TAG, "onCreate: Lifecycle.Event.ON_RESUME");
    }

    @OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)
    public void onDestroy() {
    
    
        Log.d(TAG, "onCreate: Lifecycle.Event.ON_DESTROY");
    }
}
public class MyApplication extends Application {
    
    
    @Override
    public void onCreate() {
    
    
        super.onCreate();
        ProcessLifecycleOwner.get().getLifecycle().addObserver(new MyApplicationObserver());
    }

}

We need to add it in the AndroidManifest file android:name=".MyApplication".
insert image description here
insert image description here

Guess you like

Origin blog.csdn.net/qq_43867812/article/details/127906045