Android-進程生命週期

來源:互聯網
上載者:User

標籤:android   生命週期   

Android-進程生命週期 一 進程等級
按照優先順序排列如下:
1 活動進程:Active Process
存在時期
正處於Activity Resume()[Activity重啟]狀態
正處於與bound服務互動的狀態
正處於服務在前台啟動並執行狀態(setForeground()被調用, 該函數將建立指定視窗的線程設定到前台,並且啟用該視窗)
Service生命週期函數正在被執行(onCreate(), onStrat(), onDestory())
Broadcast Receiver正在執行onReceiver()方法
殺死Foreground Process需要使用者相應,因為這個安全優先順序最高
安全優先順序最高,不會輕易被殺死


2 可見進程:Visble Process
當前進程不是焦點進程,Activity不在最上層顯示
但也沒有完全隱藏,能夠看得見,比如彈出一個對話方塊


3 服務進程:Started Service Process
正在啟動並執行,不在上述兩種狀態的Service


4 後台進程:Backgroud Process
不可見狀態的Activity進程,又沒有任何相關Service運行(onStop()被調用),系統有個後台
進程列表,一般情況採取後進先出(隊列)的原則釋放後台進程資源


5 空進程:Empty Process
沒有運行任何Components的進程,保留這個進程主要是為了緩衝的需要,例如下次啟動這個進程可以更加快速


二 Android app的啟動和消亡過程
啟動
由PackageManage(依賴PackageManageService,還與manifest檔案有關係)開始->start主Activity->主Activity不存在->向zygote系統守護進程
執行個體化一個虛擬機器進程->裝載dex檔案


退出
自動釋放

核心->dirvers(驅動)->misc->LowMemoryKiller.c檔案(實現機制)軟碟機動


程式碼退出的3種方法
finish();
System.exit(0);暴力退出
Process.killProcess(Process.myPid());暴力退出

Android-進程生命週期

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.