启动模式有4种,分别为:
1.standard(默认) -- 标准
2.singleTop -- 单顶
3.singleTask -- 单任务
4.singleInstance: -- 单例 -- 如果应用1的任务栈中创建了MainActivity实例,如果应用2也要激活MainActivity,则不需要创建,两应用共享该Activity实例。(单例)
这种启动模式比较特殊,它会启用一个新的栈结构,将Acitvity放置于这个新的栈结构中,并保证不再有其他Activity实例进入。 通过this.getTaskId()来显示栈结构ID。
在AndroidManifest.xml配置<activity>的android:launchMode属性为以上四种之一。
Activity_launchMode_singleInstance
SecondActivity和FourthActivity都是singleInstance模式,其他都是standard模式。
back :
FifthActivity (5) —> ThirdActivity (3) —>FirstAty (1) —>FourthActivity (4) —> SecondActivity (2)
结论:
singleInstance都会单独创建一个新的返回栈。
其余详见:
http://www.cnblogs.com/fanchangfa/archive/2012/08/25/2657012.html
运用场景: