黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

Android 四種launchMode

系統(tǒng) 2740 0

1,standard

每次都會(huì)新建一個(gè)Activity實(shí)例

?

2,singleTask

棧空間簡(jiǎn)易示意:A -- B -- C

Android 四種launchMode

?最后用startActivity(intent)從C跳到A后,由于棧空間已經(jīng)存在A的實(shí)例,A上面的Activity B和C出棧(即onDestroy銷(xiāo)毀),A置于棧頂

如果A中重寫(xiě)了onNewIntent(...)方法,會(huì)同時(shí)接到C跳A的intent數(shù)據(jù)

?

3,singTop

棧空間簡(jiǎn)易示意:A -- B -- C

Android 四種launchMode

最后用startActivity(intent)從C跳到A后,即使棧控件已經(jīng)存在A的實(shí)例,Android系統(tǒng)也會(huì)重新創(chuàng)建一個(gè)A的實(shí)例并且置于棧頂,當(dāng)然重寫(xiě)的onNewIntent(...)方法也不會(huì)接到intent數(shù)據(jù), 變成:

Android 四種launchMode

?

4,singleInstance(代碼跳轉(zhuǎn)邏輯:A -- B -- C -- A -- B -- C .....)

1,起始Activity非singleInstance (實(shí)際跳轉(zhuǎn)順序:A -- B -- C -- A -- B -- C .....)

Android 四種launchMode ?

A,C位于同一棧中,taskId相同, B在另一個(gè)棧中,與他們taskId不同,此棧在B未被銷(xiāo)毀前只能有B一個(gè)Activity(B在創(chuàng)建之后,onNewIntent(...)也可以接到 其他Activity跳轉(zhuǎn)的intent數(shù)據(jù)),整個(gè)過(guò)程中,B只創(chuàng)建了一次,A與C每次都創(chuàng)建一個(gè)實(shí)例

2,起始Activity為singleInstance(實(shí)際跳轉(zhuǎn)順序:A -- B -- C -- A -- C -- A -- C .....)

代碼中第一種情況相同,但實(shí)際跳轉(zhuǎn)順序卻不同,

第一次A -- B -- C 實(shí)際跳轉(zhuǎn)完成之后,當(dāng)從C回到A(A在創(chuàng)建之后,onNewIntent(...)也可以接到其他Activity跳轉(zhuǎn)的intent數(shù)據(jù))后,再?gòu)腁跳 B時(shí),卻跳到了C頁(yè)面,依次循環(huán),整個(gè)過(guò)程中,B只是在一開(kāi)始創(chuàng)建時(shí)出現(xiàn)了一次,之后從A都是直接跳C,A當(dāng)然是單實(shí)例的,但是C也只創(chuàng)建了一次,相當(dāng)于 是單實(shí)例

多次跳轉(zhuǎn)按物理返回鍵時(shí):

如果當(dāng)前頁(yè)面是A,則A銷(xiāo)毀,出現(xiàn)C,接著C銷(xiāo)毀,出現(xiàn)B,B銷(xiāo)毀,應(yīng)用程序結(jié)束

如果當(dāng)前頁(yè)面是C,則C銷(xiāo)毀,出現(xiàn)B,接著B(niǎo)銷(xiāo)毀,出現(xiàn)A,A銷(xiāo)毀,應(yīng)用程序結(jié)束

返回鍵的實(shí)際跳轉(zhuǎn)情況屬于正常,因?yàn)锳的taskId, 與B,C不同,不在同一棧中

?

但singleInstance的第2中情況,第一次A--B--C--A跳完之后,為啥從A卻進(jìn)入了C并且是之前的實(shí)例C,并不是想象中的新創(chuàng)建一個(gè)Activity B的實(shí)例 ?

Android 四種launchMode


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論