Android Activity

Activity

生命周期&啟動(dòng)模式

  1. onStart 在后臺(tái)不顯示出來,其實(shí)也是可見 我們看不到。
  2. onResume在前臺(tái)顯示出來,這時(shí)候真正可見。
  3. 新的Activity用的是透明主題,則跳轉(zhuǎn)的Activity 不會(huì)進(jìn)onStop。
  4. back 鍵會(huì)onPause->onStop->onDestory。
  5. 后臺(tái)Activity 優(yōu)先級(jí)比較低,容易因?yàn)閮?nèi)存不夠(Low Memory Kill)導(dǎo)致被殺死。需要放到Service 中。
  6. SingleTop(不干掉上面的)和SingleTask(干掉上面的)會(huì)在第二次被調(diào)用之后 會(huì)走onNewIntent 方法。此時(shí)不會(huì)走onCreate /onStart。
  7. Intent Flag 啟動(dòng)模式
    • NEW_TASK 新起一個(gè)task來啟動(dòng)activity 一般運(yùn)作于service 中啟動(dòng)activity。
    • SINGLE_TOP 和 CLEAR_TOP和 分別和SingleTop 和SingleTask一樣。
    • NO_HISTORY 啟動(dòng)之后這個(gè)activity就消失了,不會(huì)存在于Task中。
  8. AB A onPause B onCreate ->onStart->onResume A onStop 這也就是為什么在onPause中做一些簡單操作的原因了,他會(huì)導(dǎo)致下一個(gè)頁面的啟動(dòng)卡頓,白屏。實(shí)質(zhì)上四次IPC:
  • 當(dāng)前Activity發(fā)起啟動(dòng)另一個(gè)Activity的請(qǐng)求——>ActivityManagerService
  • ActivityManagerService——> 通知App暫停當(dāng)前Activity
  • 當(dāng)前App告知已經(jīng)暫停了當(dāng)前的Activity——> ActivityManagerService
  • ActivityManagerService ——> 通知App啟動(dòng)新的Activity

啟動(dòng)流程

  • 這里不塞過多的源碼 來一張經(jīng)典圖
    activity啟動(dòng)流程.png

    附上一篇我覺得寫的比較可以得文章:http://www.itdecent.cn/p/13b07beacb1f
    通讀幾遍之后 ,大約就是c /s 互相找代理 然后IPC進(jìn)行操作
  • 如何走到onCreate()方法 這里還是畫圖來說,因?yàn)閷懸淮蠖挝淖?,以后自己會(huì)忘,但是看到自己畫的圖,以后能很快想起來這一塊是什么樣子:


    activity的入口啟動(dòng).png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 學(xué)習(xí)資料: Android群英傳 Android開發(fā)藝術(shù)探索 Activity是與用戶交互的第一接口,感覺說是四大...
    英勇青銅5閱讀 2,851評(píng)論 15 41
  • 生命周期 四大啟動(dòng)模式 標(biāo)識(shí)位 Task棧 Android 1.初識(shí) Activity 四大組件之一 與用戶交...
    吃啥呀閱讀 2,534評(píng)論 5 10
  • 從實(shí)習(xí)到現(xiàn)在,工作了也快一年了,期間過程也碰到和解決了不少的問題,我的為知筆記上也積累了許許多多零零散散的知識(shí)點(diǎn)。...
    Dracula716閱讀 5,880評(píng)論 1 13
  • 此文是根據(jù)官方文檔、圖書資料及demo測(cè)試得出的結(jié)論,包括Activity多個(gè)頁面間跳轉(zhuǎn)的生命周期,各個(gè)啟動(dòng)模式的...
    gcoder_io閱讀 510評(píng)論 0 0
  • 2018年6月14日 星期四 天氣晴 (443) 今天出去學(xué)習(xí)了一天,為了更好的服務(wù)于顧客,充了一天的電,學(xué)...
    倩軒兒閱讀 125評(píng)論 0 1

友情鏈接更多精彩內(nèi)容