Android中Activity和task,活动亲和力,启动模式,活动状态以及生命周期,激活钝化
Activity和task:
android通過(guò)保持所有activity在同一個(gè)task中來(lái)維護(hù)用戶的經(jīng)歷-典型是在launcher選擇的
應(yīng)用,棧頂活動(dòng)是交互活動(dòng),back后,pop棧,即使涉及多個(gè)實(shí)例活動(dòng),不會(huì)重新管理,只有pop和push
?task:
?task是活動(dòng)的棧,task的值是作為整體設(shè)置給root activity的.
?activity:
?一個(gè)task中的所有的activity作為整體進(jìn)行移動(dòng).
?activity和task的關(guān)系,以及同一task內(nèi)activity的行為可通過(guò)intent對(duì)象的flag標(biāo)記和清單文件的activity元素
?進(jìn)行控制.請(qǐng)求和相應(yīng)都有一個(gè)說(shuō)法.
?Intent flag如下:
?FLAG_ACTIVITY_NEW_TASK
?FLAG_ACTIVITY_CLEAR_TOP
?FLAG_ACTIVITY_RESET_TASK_IF_NEEDED
?FLAG_ACTIVITY_SINGLE_TOP
?<activity>屬性有
?taskAffinity
?launchMode
?allowTaskReparenting
?alwaysRetainTaskState
?finishOnTaskLaunch
?Affinity和task:親和力和task
?默認(rèn)時(shí),應(yīng)用程序所有activity彼此具有一個(gè)Affinity-屬于同一任務(wù).但可設(shè)置單獨(dú)的activity的Affinity(通過(guò)
?<activity>屬性),不同應(yīng)用程序中的activity也可以定義相同的Affinity,或者同一應(yīng)用,不同Affinity.
?Affinity生效需要兩個(gè)條件:Intent對(duì)象包含F(xiàn)LAG_ACTIVITY_NEW_TASK標(biāo)記和allowTaskReparenting=true
??FLAG_ACTIVITY_NEW_TASK:
??如果含該標(biāo)記,系統(tǒng)查找不同的任務(wù)來(lái)容納新的activity,通常是新建task.但不一定這樣,如果已經(jīng)存在具有同一
??Affinity的task,新的activity會(huì)在那個(gè)task中啟動(dòng),若沒(méi)有,開(kāi)始新的任務(wù).
??allowTaskReparenting
??若設(shè)置該屬性為true,該activity可以彼task回到前臺(tái)時(shí)有開(kāi)始時(shí)的task移動(dòng)到那個(gè)task上.
launch Mode:
?standard:每次訪問(wèn)實(shí)例化新的對(duì)象.
?singleTop:如果目標(biāo)activity在棧頂,直接返回.否則實(shí)例化.
?singleTask:是單例,通常設(shè)置給root activity.由此開(kāi)啟的activity具有相同的taskid
?singleInstance:是單例,通常設(shè)置給root activity.由此開(kāi)啟的activity具有不同的taskid
?task:是activity的棧,
?
activity狀態(tài):
?激活態(tài):棧頂,正在交互
?暫停態(tài):可見(jiàn),被不完全覆蓋
?停止態(tài):不可見(jiàn),完全覆蓋.
activity生命周期循環(huán):
?完整周期:onCreate() ---> onDestroy()[停止態(tài)]
?可視周期:onStart() --> onStop();[暫停態(tài)]
?前臺(tái)周期:onResume()--->onPause();[激活態(tài)]
?onCreate() --- onStart()?? --- onResume()? --- onPause()? -- onStop? -- onDestory()
??????????????????????? |???????????????? |????????? |????|
??????|????? |-----<----????|
??????|------------<---- onRestart() -------------|
active:激活
deactive:鈍化
總結(jié)
以上是生活随笔為你收集整理的Android中Activity和task,活动亲和力,启动模式,活动状态以及生命周期,激活钝化的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 股票sw是什么意思的
- 下一篇: Android中BroadcastRec