activity啟動模式/載入模式
activity啟動模式任務堆疊
activity中的任務是與使用者互動的一組
activity
的集合,
activity
會被按開啟順序安排在乙個堆疊裡。
任務棧:並不是activity是
activity
的引用(記憶體位址)
1.standard 標準模式
每次啟用
activity
時都會建立
activity
,並放入任務棧中
預設模式
2.singletop 獨享堆疊頂端
如果在任務的棧頂正好存在該
activity
的例項,就重用該例項,否者就會建立新的例項並放入棧頂
(即使棧中已經存在該
activity
例項,只要不在棧頂,都會建立例項
)
setflags(intent.flag_activity_clear_top3.);//不管如何都移除它上面的例項,並重新oncreate
singletask 獨享任務堆疊
如果在棧中已經有該
activity
的例項,就重用該例項
(會呼叫例項的
onnewintent())
。重用時,會讓該例項回到棧頂,因此在它上面的例項將會被移除棧。如果棧中不存在該例項,將會建立新的例項放入棧中
setflags(intent.flag_activity_clear_top4.|intent.flag_activity_single_top)//類似singletask
singleinstance單例
在乙個新棧中建立該
activity
例項,並讓多個應用共享該棧中的該
activity
例項。一旦該模式的
activity
的例項存在於某個棧中,任何應用再啟用該
activity
時都會重用該棧中的例項,其效果相當於多個應用程式共享乙個應用,不管誰啟用該
activity
都會進入同乙個應用中
總結:singletop:如果重複使用上一次的
activity
,就重用。
singletask:如果使用已經例項化
activity
,就重用,並且刪除重用
activity
前面的activity
,重用的
activity
置頂任務棧。
singleinstance:在乙個新棧中建立該
activity
例項,並讓多個應用共享該棧中的該
activity
例項。(呼叫activity和重用activity不在乙個棧中)
singletop 、singletask 、singleinstance 優化效能、重用
activity
。
Activity的啟動模
四種啟動模式 standard,singletop,singletask,singleinstance 通過在androidmanifest.xml的標籤中指定android launchmode屬性來設定啟動模式 standard standard是活動的預設啟動模式,我們知道android是通過...
Android歷程 Activity啟動模式
在android中的activity包含有四種啟動模式,分別為standard singletop singletask與singleinstance他們之間彼此聯絡,有各有各的特點 下面進行一下細緻的了解 1 standard standard為標準啟動模式,每次啟用時都會建立乙個新的activi...
Android基礎 Activity啟動模式
在android中,活動的管理是通過返回棧來控制的,每當啟動乙個新的活動,它就會在返回棧中入棧。活動的啟動模式就是控制活動進入返回棧的方式,包括standard singletop singletask和singleinstance四種。每次都會在返回棧頂層加入新的活動,standard是活動預設的...