您的位置:首页 > 移动开发 > Android开发

android activity Launch Mode & TaskAffinity解析

2012-08-27 13:56 381 查看
四种Launch mode

Standard,默认模式,可以多实例,可以在task里面产生多个实例

SingleTop:当启动的activity为当前的activity时,不生成新实例,回调onNewIntent,反之,生成新的实例。

SingleTask:如果该activity已经存在,那么切换task,然后把该activity之后的所有activity全部销毁,如果没有,则启动一个新的task

SingleInstace:与SingleTask相似,不同的是,该task只能该activity独占,不能有其他activity,如果在该task启动其他activity,相当于附带NEW_TASK_FLAG

TaskAffinity:activity归属感? 可以理解为activity group。

用String来表示affinity的值,相同的值代表相同的activity group

与之相关的属性

allowTaskReparenting,当启动后切换到后台,是否可以将它移动到affinity相同的task,浏览器的例子

clearTaskOnLaunch,如果带此属性的activity为某个task的root activity,那么当它启动后,销毁该task中所有除它意外的activity

finishOnTaskLaunch,当task重新切换回到前台时,附带此属性的activity将被销毁

alwaysRetainTaskState如果带此属性的activity为某个task的root activity,那么该task的其他activity将不会随着时间的变化而不系统解决掉
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: