android杀掉进程顺序
Android的5個(gè)進(jìn)程等級(jí)(Process Levels)
1) Foreground Process
正處于Activity Resume() 狀態(tài)
正處于與bound服務(wù)交互的狀態(tài)
正處于服務(wù)在前臺(tái)運(yùn)行的狀態(tài) , (startForeground() 被調(diào)用)
Service生命周期函數(shù)正在被執(zhí)行 ( onCreate() , onStart() , onDestroy())
BroadcastReceiver 正在執(zhí)行onReceive()方法
殺死Foreground Process 需要用戶響應(yīng)-因?yàn)檫@個(gè)安全優(yōu)先級(jí)是最高的
2) Visible Process
Activity 不在前端顯示 , 但也沒有完全隱藏,能夠看得見,比如彈出一個(gè)對(duì)話框 。(Input Method)
一個(gè)bound到visible 或者 foreground 的activity的 Service?
3) Service Process
正在運(yùn)行的,不在上述兩種狀態(tài)的Service
4) Background Process
不可見狀態(tài)的Activity進(jìn)程,(onStop()被調(diào)用)
5) Empty Process
沒有運(yùn)行任何Components的進(jìn)程,保留這個(gè)進(jìn)程主要是為了緩存的需要
具體的應(yīng)用:
1.不希望系統(tǒng)關(guān)掉sevice中斷服務(wù)方法 :
如音樂sevice 啟動(dòng)sevice時(shí)調(diào)用startForeground()前臺(tái)啟動(dòng),不會(huì)被系統(tǒng)關(guān)掉,音樂會(huì)繼續(xù)播放,除非通過人機(jī)交互手動(dòng)確認(rèn)關(guān)掉.
2.空進(jìn)程是為了做緩存,內(nèi)存里記錄一些值,下次打開快。
3.如果又有Service又有Visible Activity怎么辦?
if a process hosts a service and a visible activity, the process is ranked as a visible process, not a service process.
當(dāng)進(jìn)程既有Service 并且 有Visible Activity的時(shí)候,進(jìn)程會(huì)被認(rèn)為是Visible 進(jìn)程 。?
得出結(jié)論:優(yōu)先級(jí)高的為準(zhǔn)。
總結(jié)
以上是生活随笔為你收集整理的android杀掉进程顺序的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: onSaveInstanceState在
- 下一篇: android.os.Build 信息类