-
Activity启动模式介绍:
-
standard模式:
Android默认的启动模式,每次启动一个Activity的时候都会启动一个新的Activity实例。
-
singleTop模式:
singleTop模式又称栈顶模式,每次启动一个Activity的时候,首先会判断当前任务栈的栈顶是否存在该Activity实例, 如果存在则重用该Activity实例,并且回调其onNewIntent()函数,否则就创建一个新实例。
-
singleTask模式:
singleTask模式在启动一个Activity的时候,会先在当前任务栈的栈中寻找是否有该Activity的实例, 如果有就回调该Activity实例的onNewIntent()函数,并且会将其上面的实例移出任务栈,使其回到栈顶, 否则创建新实例。
-
singleInstance模式:
singleInstance模式,会在一个新的任务栈中启动Activity,一旦该任务栈中存在该Activity实例, 那么任何应用再激活此Activity都会回调该实例的onNewIntent()函数。效果与多个应用共享一个应用类似, 无论是哪一个应用激活此Activity,都相当于进入了共享的应用中。
-
-
Activity启动模式的应用场景:
- singleTop模式可用于通知的详情页,当有多个通知的时候,就不需要为每一个通知单独开启Activity了。
- singleTask模式用于程序的入口点(程序的主界面)。例如,无论多少个应用打开浏览器都只会启动一个Activity实例,其余的都走onNewIntent()函数,并且会清空之前的页面。
- singleInstance模式适合与程序分离的页面。例如闹钟提醒,闹钟提醒界面可能会不定时的被启动,所以此时单独存在一个栈中是最合适的选择。
Android launchMode(启动模式)
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 一、概述 Activity 作为与用户交互的一个窗口,是使用非常频繁的一个基本组件。Android系统是通过Act...
- 1. LaunchMode 简介 launchMode 是 Activity 类的一个属性,该属性包括4个具体值:...