1.进程的概念&进程优先级
当应用运行后,系统会创建一个Linux进程,大部分情况下一个android应用对应一个linux进程,这个进程在一开始的时候只有一个线程。
所有的组件都运行在同一个进程中,四大组件都运行在主线程中。
Android尽量保证每一个开启的进程更长久的存在。
进程优先级(优先级越高,越重要)
1.前台进程
当前进程中,有activity处于可操作的状态(activity执行了resume之后,并且留在这个状态,正在被用户操作)
service执行生命周期方法 以及广播的接收者执行onReceive方法。
2.可见进程
并不处于前台, 不可操作,却可以被用户看到(onPause方法执行了),比如透明的应用覆盖在此应用上面,或者是一个对话框activity盖在上面。
它有一个服务绑定在一个可见的activity
3.服务进程
一个服务被 startService() 开始,运行在后台,并且没有其它组件处于前两者状态,看不到这个进程
比如下载进程,播放音乐
4.后台进程
处于onStop() 之后的状态,但没有被销毁,通常有大量应用处于后台,最长时间没用的,最先被杀死。LRU(least recently used)
5.空进程
没有任何组件在运行,保存空进程,目的就是下次开启该进程的时候,减少开启的时间。