Android 生命周期(一)--优先级

来源:互联网 发布:windows软件包2016 编辑:程序博客网 时间:2024/05/16 04:44


声明:这是我整理的上课笔记 自己留下日后看的 有老师的心血 未经允许不许转载

程序的生命周期

程序的生命周期是在Android系统中进程从启动到终止的所有阶段,也就是Android程序启动到停止的全过程

程序的生命周期由Android系统进行调度和控制的

 

第一部分:优先级(资源受限导致)

Android系统中的进程优先级由高到低(手机的配置不同与Pc配置较低 有较明显的优先级划分)

 

前台进程: 用户交互

可见进程:

服务进程:

后台进程:不可见服务

空进程: 比较空闲的时候 暂时不关闭

//--------------------------------------

1.前台进程

前台进程是Android系统中最重要的进程,是与用户正在交互的进程,包含以下四种情况

进程中的Activity正在与用户进行交互

进程服务被Activity调用,而且这个Activity正在与用户进行交互

进程服务正在执行声明周期中的回调函数,如onCreate()onStart()onDestroy()

进程的BroadcastReceiver(广播组件-被启动作为前台进程)正在执行onReceive()函数

//-------------------------------------

2.可见进程(类比PC PC中比较常见 有被遮盖的有可以控制的窗口 )

可见进程指部分程序界面能够被用户看见,却不在前台与用户交互,不响应界面事件的进程

如果一个进程包含服务,且这个服务正在被用户可见的Activity调用,此进程同样被视为可见进程

Android系统一般存在少量的可见进程,只有在特殊的情况下,Android系统才会为保证前台进程的资源而清除可见进程

//------------------------------

3.服务进程(Service)

服务进程是指包含已启动服务的进程

没有用户界面

在后台长期运行

Android系统除非不能保证前台进程或可视进程所必要的资源,否则不强行清除服务进程

4.后台进程

后台进程是指不包含任何已经启动的服务,而且没有任何用户可见的Activity的进程

Android系统中一般存在数量较多的后台进程,在系统资源紧张时,系统将优先清除用户较长时间没有见到的后台进程

5.空进程

空进程是不包含任何活跃组件的进程

空进程在系统资源紧张时会被首先清除

但为了提高Android系统应用程序的启动速度,Android系统会将空进程保存在系统内存用,在用户重新启动该程序时,空进程会被重新使用

除了以上的优先级外,以下两方面也决定他们的优先级

 

 

进程的优先级取决于所有组件中的优先级最高的部分

进程的优先级会根据与其他进程的依赖关系而变化



0 0