上周面试中有一题是请简述Android 应用的生命周期,这有点让人懵了!平时一般都是说四大组件的生命周期,这应用的生命周期还真不会描述,这是面试回来后从网上查资料的结果,顺便记录下来,如果对你有帮助,请顶一下呗,如果有错误,麻烦各位帮我留言斧正,本人不胜感激!
1.程序生命周期
一个Android 应用程序大概会经历如下的生命周期:
(1)前台进程
(2)可见进程
(3)服务进程
(4)后台进程
(5)空进程

其进程的优先级顺序如下:
前台进程   >   可见进程  > 服务进程  > 后台进程   > 空进程

2.说明:

(1)前台进程:
Android 系统最为重要的进程,是与用户正在进行交互的进程;一般表现为四种情况:一、Activity正在与用户进行交互;二、进程被Activity 调用而且这个进程正在用户进行交互;三、进程服务正在执行声明中的回调函数,如onCreate()、onStart()等;四、BroadCastReceiver 正在执行 onReceive() 的函数。
当Android 系统在多个前台进程同事运行时,可能会出现资源不足,部分前台进程会被清除以保证用户界面能够及时响应。

(2)可见进程:部分程序界面能够被用户看见,却不在前台与用户交互,不影响事件的进程。
如果一个进程包含服务,且这个服务正被用户可见的Activity调用,此进程同样被视为可见进程。
Androdi进程一般存在少量的可见进程,只有在特殊情况下,Android系统才会为保证前台进程的资源而清除可见进程。

(3)服务进程:
指已经启动了服务的进程(没有界面,在后台运行)
Android系统除非不能保证前台进程和可见进程所必要的资源,否则不强行清除服务进程。

(4)后台进程:
指除了已经启动了服务外,而且没有任何用户可见的Activity 进程。
Android 系统中一般会存在较多的后台进程,在系统资源紧张时,会首先清除用户长时间没有使用的后台进程。

(5)空进程;
不包含任何活跃组件的进程,为了加快应用启动速度,Android 系统将空进程保存在系统内存中。
这一类进程在系统资源紧张时会首先被清除(优先级越低越容易被清除)。

—-the end—–
接下来我会重新整理一遍关于Android 的基础知识,如果有喜欢的,请顶起来!