22:LaunchMode應用場景
阿新 • • 發佈:2018-11-09
1:SingleTop:如果位於棧頂,呼叫的時候不會生成新的activity,直接複用;
如果不位於棧頂,呼叫的時候生成新的activity;
場景:頂部生成notification的時候我們去點選這個通知,而這個通知跳轉的就是我們當前所在的頁面,用singleTop可以避免同樣的頁面多次開啟;
2:SingleTask:如果棧裡面存在該activity,呼叫的時候,activity上面的所有的activity全部移除,複用該activity。
場景:無論介面在哪個地方,當我們跳轉到登入介面的時候,我們希望的是按返回鍵的時候,是退回到桌面的。這是用SingleTask,能保證
無論是從哪個頁面跳轉過來的,我們按返回鍵都能退回到桌面。
3:SingleInstance:當該activity設定為SingleInstance, 呼叫的時候,會另起一個棧單獨儲存該acitvity;
場景:我們的App需要呼叫另外一個應用的mActivity,如果是正常情況下,到這個mActivity介面之後,按返回鍵是不會返回到我們的應用的,應用
mActivity所在的棧還有他們應用自己的很多的activity,只能回退到他們自己mActvity的前面一個activity;
當我們應用SingleInstance的時候,呼叫mActivity會使mActivity另外單獨存在於一個棧,這時候按返回鍵就會返回到我們的應用。