一直對(duì)activity的onNewIntent有些困惑,開始時(shí)只是知道在activity被重新restart時(shí)會(huì)進(jìn)入,后來又發(fā)現(xiàn)還不只是這種情況,下面是經(jīng)過調(diào)試后的結(jié)論
第一種情況:activity launchMode為singleTask或者singleInstance
1、activitya start activityb
2、activityb start activitya
在第二步被執(zhí)行后,activitya就會(huì)順序執(zhí)行 onNewIntent onRestart onStart onResume
第二種情況:activity launchMode為singleTop singleTask singleInstance
1、start activitya
2、activitya start activitya
在第二步被執(zhí)行后,activitya就會(huì)順序執(zhí)行onPause onNewIntent onResume
第一種情況其實(shí)是真正的activity被restart,第二種情況是activity位于棧頂時(shí)被再次start就會(huì)進(jìn)入onNewIntent
其實(shí)理解的簡(jiǎn)單一點(diǎn),無論什么模式,只有activity是同一個(gè)實(shí)例的情況下,intent發(fā)生了變化,就會(huì)進(jìn)入onNewIntent中,這個(gè)方法的作用也是讓你來對(duì)舊的intent進(jìn)行保存,對(duì)新的intent進(jìn)行對(duì)應(yīng)的處理。
作者:OoYoO
鏈接:http://www.itdecent.cn/p/ed381338a979
來源:簡(jiǎn)書
簡(jiǎn)書著作權(quán)歸作者所有,任何形式的轉(zhuǎn)載都請(qǐng)聯(lián)系作者獲得授權(quán)并注明出處。