Activity啟動流程 總結

2021-08-02 19:13:35 字數 614 閱讀 8836

該文介紹在activity啟動過程中涉及到的相關類和對該啟動過程知識總結

對activitystacksupervisor中維護的幾個類的集合的理解,幫助我們更好的理解activity的四種啟動模式。

activitydisplay:顯示的裝置,每個裝置中都包含多個activitystack,它們的型別在上文中有介紹。

activitystack:乙個activitystack中包含多個taskrecord。activitystack的選擇又和當前的顯示模式相關,桌面、全屏、畫中畫等。

taskrecord:這個就是我們說的啟動模式相關的記錄類了,上面的兩個物件確認後,就會根據當前的啟動模式選擇或者建立對應taskrecord。可以參照上文中的startactivityunchecked處理。

從乙個activity啟動另乙個activity,第乙個activity會先執行pause和stop,然後再去判斷另乙個activity的程序是否已經啟用,如果未啟用則會先啟動程序,再去建立activity,執行create、start和resume操作。

Activity啟動流程

0x01 public void startactivity intent intent 最終走到 public void startactivityforresult requirespermission intent intent,int requestcode,nullable bundle ...

Activity啟動流程

activity啟動流程很多文章都已經說過了,這裡說一下自己的理解。activity啟動流程分兩種 後邊啟動activity的流程是一樣的,區別是前邊判斷程序是否存在的那部分。activity啟動的前提是已經開機,各項程序和ams等服務已經初始化完成,在這裡也提一下那些內容。ipc 跨程序通訊,an...

activity啟動流程

所有程序都是由init程序直接或間接fork出來的 android系統啟動時,init程序會fork出zygote,意為 受精卵 後面的所有程序都是zygote 出來的 在zygote程序初始化時會啟動systemserver程序,平時所用到的ams pms wms 網路等服務都是在systemse...