public class MyObserver implements LifecycleObserver {
private final static String TAG = MyObserver.class.getSimpleName();
@OnLifecycleEvent(Lifecycle.Event.ON_START)
public void ready(){
Log.e(TAG,“ON_START”);
}
@OnLifecycleEvent(Lifecycle.Event.ON_RESUME)
public void connectListener() {
Log.e(TAG,“ON_RESUME”);
}
@OnLifecycleEvent(Lifecycle.Event.ON_PAUSE)
public void disconnectListener() {
Log.e(TAG,“ON_PAUSE”);
}
@OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)
public void destroyListener() {
Log.e(TAG,“ON_DESTROY”);
}
}
然后在Activity当中调用:
getLifecycle().addObserver(new MyObserver());
运行,启动AC,home返回桌面,再返回,再back关闭AC,打印输出:

我们发现
LifecycleOwner
这个接口可以帮助我们摆脱Activity之外独立监听Activity的生命周期,
点击
getLifecycle()
方法,发现:
没错,就是在
SupportActivity
类当中的
LifecycleRegistry
这个类的对象