1 1 activity 總結2 啟動模式

2021-08-18 20:37:10 字數 780 閱讀 1885

四種啟動模式:

1.預設standrad(直接建立新的例項)

activity棧的變化:(假設都沒設定)

a b c

現在啟動c

a b c c

2.棧頂復用singletop(如果此時位於頂部,復用)

引起的生命週期

如果c在頂部

activity棧的變化:(假設c設定了singaltop)

a b c

如果啟動c

a b c

如果c不在頂部

activity棧的變化:(假設c設定了singaltop)

a c b

如果啟動c

a c b c

3.棧內復用singaltask(如果此時任務棧中有,退出在它上面的,復用它)

引起的生命週期 執行了包括自己上部的activity的destory 

剩餘 仿照 返回自己

activity棧的變化:(假設c設定了singaltask)

a c b

現在啟動c

a c4.單例復用singalinstance(系統會給它另外乙個棧)

activity棧的變化:(假設c設定了singalinstance)

棧1:a b 

棧2:如果啟動c

棧1:a b 

棧2:c

再啟動一次c

棧1:a b 

棧2:c

Activity啟動流程 總結

該文介紹在activity啟動過程中涉及到的相關類和對該啟動過程知識總結 對activitystacksupervisor中維護的幾個類的集合的理解,幫助我們更好的理解activity的四種啟動模式。activitydisplay 顯示的裝置,每個裝置中都包含多個activitystack,它們的型...

2 Activity啟動模式

activity 啟動模式,熟知的就是 standard singletop singletask singleinstance 注意點 只有 singletask 啟動模式的activity 單獨設定任務棧名稱有意義。任務棧名稱不可與包名一致,設定方式為在清單檔案。android taskaffi...

總結系列 Activity啟動模式

activity作為android中重要一環,它有4種不同的啟動模式,類似於c語言中的區域性變數 全域性變數及靜態變數等。這4種啟動模式如下。standard 標準模式,呼叫startactivity 方法就會產生乙個新的例項。singletop 檢查是否已經存在了乙個例項位於activity st...