activity的生命周期
onCreate
activity正在被创建,在这里做一些初始化工作
onRestart
actvity正在重新启动,正常由用户行为导致
onStart
activity正在被启动,activity此时已可见,但仍然处于后台,无法进行交互
onResume
activity可见,并处于前台,可以进行交互
onPause
activity正在停止,正常情况下会马上调用onStop,特殊情况下快速回到activity会调用onResume
onStop
activity即将停止,可以做一部分回收工作,不能太过耗时
onDestory
activity即将被销毁,在这里做回收工作以及资源释放
生命周期切换过程
下图来自android官网,关于生命周期的切换过程
具体分为如下几种情况:
-
首次启动的activity:onCreate->onStart->onResume;
-
在当前activity上启动新的activity:onPause->onStop,若新activity采用透明主题则当前activity不会回调onStop;
-
用户回到原activity:onRestart->onStart->onResume;
-
当用户点击back键回退时:onPause->onStop->onDestory;
-
activity被系统回收:onPause->onStop->onDestory->onCreate->onStart->onResume,系统还会调用onSveInstanceState(在onStop之前调用)保存当前activity的一些状态,调用onRestoreInstanceState(在onStart之后调用)可以获取到onSveInstanceState中保存的数据;