参考文章
条件:A(singleTask) B(默认) C(默认)
A ---关闭A---> B ----> C ----->A
A_onCreate
A_onStart
A_onResume
//这里finishA
A_finish
A_onPause-----------------注意点
B_onCreate
B_onStart
B_onResume
A_onStop
A_onDestroy
B_onPause-----------------注意点
C_onCreate
C_onStart
C_onResume
B_onStop
//这里重新启动A
C_onPause-----------------注意点
A_onCreate
A_onStart
A_onResume
C_onStop
1、onPause执行完成,就是下一个activity准备启动onCrate的时间点。从这里我发现重新启动A,只是调用了C的onPause,onStop,正常来说onDestroy也会调用的,但是系统并没有去执行,它的调用时机是不确定的,当onDestory调用的时候也就是最后一步,资源空间等就被回收了,B的生命周期没有任何的执行
条件:A(singleTask) B(默认) C(默认) 后台限制为不存在后台进程
A ---关闭A---> B ----> C
打开我们的APP----->打开京东------>返回/切回我们的APP,我们APP进程直接被干死,重新创建一个属于我们APP的进程,重新打开A界面,重走A的生命周期
条件:A(默认) B(默认) C(默认) 模拟APP被系统回收,点击APP图标重起
模拟APP被系统回收.jpg
A ----> B ----> C---->按下home并回收app---->点击APP图标
创建Application(17375)
A_onCreate
A_onStart
A_onResume
//这里finishA
A_finish
A_onPause-----------------注意点
B_onCreate
B_onStart
B_onResume
A_onStop
A_onDestroy
B_onPause-----------------注意点
C_onCreate
C_onStart
C_onResume
B_onStop
//按下home后点击回收app
C_onPause
C_onStop
//点击APP图标
创建Application(17652)
A_onCreate
A_onStart
A_onResume
1、如果按下home,杀死APP,点击APP图标,重新从A启动
条件:A(默认) B(默认) C(默认) 模拟APP被系统回收,从任务状态栏返回APP
模拟APP被系统回收.jpg
A ----> B ----> C---->按下home并回收app---->从任务栏切回APP
创建Application(17375)
A_onCreate
A_onStart
A_onResume
//这里finishA
A_finish
A_onPause-----------------注意点
B_onCreate
B_onStart
B_onResume
A_onStop
A_onDestroy
B_onPause-----------------注意点
C_onCreate
C_onStart
C_onResume
B_onStop
//按下home后点击回收app
C_onPause
C_onStop
//从任务状态栏返回
创建Application(17652)
C_onCreate
C_onStart
C_onResume
1、如果按下home,杀死APP,从任务栏切回APP,发现会直接从C重新进行创建










网友评论