Android启动模式

2022-03-15  本文已影响0人  三十五岁养老

FLAG_ACTIVITY_NEW_TASK: 设置此状态,首先会查找是否存在和被启动的Activity具有相同的亲和性的任务栈(即taskAffinity,注意同一个应用程序中的activity的亲和性一样),如果有,刚直接把这个栈整体移动到前台,并保持栈中的状态不变,即栈中的activity顺序不变,如果没有,则新建一个栈来存放被启动的activity

1. standard 标准的启动模式(默认)

2. singleTop 单一栈顶模式

3. singleTask 单一任务栈模式

"launchMode"设置为"singleTask"的Activity只能被实例化一次, 它允许其它Activity压入"singleTask"的Activity
所在的Task栈,如果有新的Intent请求有此标志的Activity, 则系统会清除有此标志的Task栈中的全部Activity,并把此Activity显示出来.

4. singleInstance 单一实例模式

launchMode"设置为"singleInstance"的Activity总是在栈底, 只能被实例化一次, 不允许其它的Activity压入"singleInstance"的Activity所在Task栈, 即整个Task栈中只能有这么一个Activity.

除了系统级别的一些应用程序会用,其他的应用程序很少用.

如果某个activity 要显示的界面在整个手机中 只有一个 的话,那么 这个activity就会设置成singleInstance

参考链接:https://www.cnblogs.com/xiaoQLu/archive/2012/07/17/2595294.html

上一篇下一篇

猜你喜欢

热点阅读