1.Foreground process
a.有一個Activity正在和用戶互動
b.有一個Service被綁定於一個正在和用戶互動的Activity
c.有一個Service調用了startForeground()
函數
d.有一個Serivice正在執行生命週期相關的函數onCreate()
,
onStart()
, 或者
onDestroy()
e.有一個BroadcastReceiver
正在執行onReceive()
2.Visible process
a.有一個Activity雖然不在前臺,但是用戶可見
b.有一個Service綁定於以上的Activity
3.Service process
進程中有一個以startService()
啓動的Service正在運行。這表明這個Service有可能在後臺默默的做一些事情,比如播放背景音樂或者下載。
4.Background process
這類進程不會有Activity和用戶互動,所以在內存緊張的時候可以被殺死,以確保以上3類進程有足夠的內存資源運行。
5.Empty process
這類進程中沒有任何的組件,主要是爲了cache的目的,以便下一個組件需要在其中運行的時候能夠快速啓動。