Android系统自动管理打开并运行与后台的应用户程序。单个程序都有个oom_adj值,值越小,优先级越高,被杀死的可能性越低。
Android系统通常有一个内存警戒值与oom_adj值的对应表,每一个内存警戒值对应一个oom_adj值。当系统内存低于警戒值时,所有大于oom_adj值得进程都可被杀死。
- 前台进程
正在屏幕上显示的进程和一些系统进程
- 可见进程
不在前台,但用户依然可见的进程,举个例来说:widget、输入法等
- 服务进程
通过 startService() 方法启动的进程,但不属于前台进程和可见进程。例如,在后台播放音乐或者在后台下载就是服务进程。
- 后台进程
目前对用户不可见的 Activity 的进程(已调用 Activity 的 onStop() 方法)。入A应用目前为前台进程,按下Home键回到桌面,A应用就变为了后台进程
- 空进程
没有任何东西在内运行的进程。保留这种进程的的唯一目的是用作缓存,以缩短该应用下次在其中运行组件所需的启动时间。
回收顺序
从先到后分别是:空进程,后台进程,服务进程,可见进程,前台进程
参考:
《Android安全机制解析与应用实践》 第二章 Android安全模型
Android进程管理详解
这可能是最全的Android:Process (进程)讲解了