《Android群英传》---读书笔记7

《Android群英传》—读书笔记7

标签: android中级 读书笔记


Activity与Activity调用栈分析

知识点:Activity的生命周期与工作模式
Activity调用栈管理

8.1 Activity

8.1.1 Activity形态
1 Active/Running
2 Paused
3 Stopped
4 Killed
8.1.2 生命周期

8.2 Android任务栈简介

8.3 AndroidMainifest启动模式

1 standard
2 singleTop
3 singleTask
4 singleInstance

8.4 Intent Flag启动模式

1 Intent.FLAG_ACTIVITY_NEW_TASK:启动一个新的Task来启动一个Activity,常用在Service启动Activity的时候
2 Intent.FLAG_ACTIVITY_SINGLE_TOP:相当于singleTop
3 Intent.FLAG_ACTIVITY_CLEAR_TOP:相当于singleTask
4 Intent.FLAG_ACTIVITY_NO_HISTORY:以这种方式启动Activity,当该Activity启动其他Activity后,该Activity就消失了,不会保留在Activity栈中

8.5 清空任务栈

可以在< activity>标签中使用如下几种属性来清空任务栈
1 clearTaskOnLaunch ,每次返回该Activity时,都将该Activity上的所有Activity都清除,可以通过这个属性让Task在每次初始化的时候,都只有这一个Activity
2 finishOnTaskLaunch
属性与clearTaskOnLaunch类似,不过这个属性是作用在自己身上,而clearTaskOnLaunch作用在别人身上。通过这个属性,当离开这个Activity所处的Task的时候,当用户再返回时,该Activity就会别finish掉
3 alwaysRetainTaskState ,若设置此属性,那么该Activity所在的Task将不接受任何清除指令,一直保持当前的Task状态

8.6 Activity任务栈使用

不要为使用任务栈而使用任务栈,即不能滥用,否则可能会导致栈管理混乱,出现难以调试的bug

你可能感兴趣的:(android基础,android中级)