每一个Android应用程序在运行时,对于底层的Linux Kernel而言都是一个单独的进程,但是对于Android系统而言,因为局限于手机画面的大小与使用的考虑,不能把每一个运行中的应用程序窗口都显示出来。
所以通常手机系统的界面一次仅显示一个应用程序窗口,Android使用了Activity的概念来表示界面。
运行中的应用程序分为五大类,分别是:
前景模式:foreground process
可见模式:visible process
背景模式:background process
空白模式:empty process
服务模式:service process
除了最后一个,貌似service process是Service的事情了。其他都与Activity相关。
Android系统会判断应用程序Activity是属于哪一个类,给予不同的Activity生命周期。
Activity的生命周期也是它所在进程的生命周期。
Activity生命周期的运行如下图:
通俗来讲:
onCreate()页面被创建 只执行一次
onStart()可以理解为当前页面可见
onResume()可以理解为当前页面可以点击(获取焦点)
onPause()可以理解为当前页面不能点击(失去焦点)
onStop()可以理解为当前页面不可见
onDestroy()页面被销毁 下次调用本页面会调用onCreate()
onReStart()可以理解为页面不可见 后重新回到本页面调用 例如:A跳转到B页面 从B页面回到A页面 A将会调用onReStart()法
方法调用顺序 如上图