一,standard启动模式
此模式是默认的启动模式,每次startActivity都是创建一个新的activity的实例。适用于绝大多数的情况。
二,singeTop模式
单一顶部模式。如果要开启的Activity在任务栈的顶部已经存在了,就不会创建新的实例,而且调用onNewIntent方法。
应用例子:浏览器的书签,避免栈顶的activity被重复创建,解决用户体验问题。
三,singletask模式
单一任务栈,activity只会在任务栈里存在一个实例。如果要激活的activity,在任务栈里边已经存在,就不会创建新的activity,而是服用这个已经存在的activity,
调用onNewIntent方法,并且清空当前任务栈上所有的activity。
应用例子:浏览器activity,整个任务栈只有一个实例,节约内存和CPU的目的。
注意:activity还是运行在当前的应用程序的任务栈里边的,不会创建新的任务栈。
四,singleInstance模式
单一实例,整个手机操作系统里边只有一个实例存在。不同的应用去打开这个activity共享共用同一个activity。他会运行在自己单独,独立的任务栈里边,并且任务栈只有他一个实例存在。
应用场景:呼叫来电界面。
本文详细介绍了Android中四种Activity启动模式的特点及应用场景:standard模式适用于大多数情况;singleTop模式用于避免栈顶Activity重复创建;singleTask模式确保Activity在整个任务栈中仅有一个实例,并清除其上方的所有Activity;singleInstance模式确保Activity在操作系统中只有一个实例,适用于呼叫来电界面。
1617

被折叠的 条评论
为什么被折叠?



