从0开始学Android之Android生命周期

做Android大约两年了,但是身为女程序媛,感觉自己还是写的东西少。

从0开始学Android这个系列慢慢更新吧。

今天要讲的就是我们都熟悉的生命周期。

在网上我们一搜就是有很多的生命周期图,下面是我画的一幅易懂的基础生命周期图。

从0开始学Android之Android生命周期_第1张图片

生命周期和启动模式有关吗?当然是有相应的关系呢。

我们现在介绍一下标准模式下的Activity的生命周期在不同情况下所走的流程是怎样的吧。我建议还是你手敲一遍代码根据log日志,这样印象会更深一些。

Activity启动模式:标准模式standard下的生命周期

Activity启动运行走的是onCreate()->onStart()->onResume()



当手机锁屏的时候,Activity的生命周期是onPause ()->onStop()



当手机解锁的时候, Activity的生命周期是onRestart()->onStart()->onResume()



当手机切换到第二个界面的时候,Activity的生命周期是

第一个Activity的生命周期是onPause()->onStop()


第二个Activity的生命周期是onCreate()->onStart()->onResume()



当手机返回第一个界面的时候,Activity的生命周期是

第二个Activity的生命周期是onPause()->onStop()->onDestroy()


第一个Activity的生命周期是onRestart()->onStart()->onResume()


当程序退居后台的时候Activity的生命周期是onPause()->onStop()


当程序从后台返回到前台的时候Activity的生命周期是onRestart()->onStart()->onResume()


当屏幕旋转的时候,Activity的生命周期是

onPause()->onStop()->onDestroy()->onCreate()->onStart()->onResume()


Activity退居后台,且系统内存不足,系统会杀死这个后台状态的Activity(此时这个Activity引用仍然处在任务栈中,只是这个时候引用指向的对象已经为null),若再次回到这个Activity,则会走onCreate()–>onStart()—>onResume()(将重新走一次Activity的初始化生命周期)



你可能感兴趣的:(Android)