加载模式便是决定以哪种方式启动一个跳转到原来某个Activity实例。
Activity的启动模式可以通过AndroidManifest.xml文件中的<activity>元素的属性来指定,一共有4中模式:
android:launchMode="singleTask"
o standard
o singleTop
o singleTask
o singleInstance
|
特点 |
举例ADBCD>D |
调用过程 |
用处 |
其他 |
Standard |
多个实例 |
ADBCDD |
实例化新的activity |
|
同一个task存在一个activity的多个实例,并且位于activity的任意位置 |
SingleTop |
Top范围一个实例 |
ADBCD |
如果栈顶已有,不再实例化新的。 |
避免糟糕的用户体验 | |
Singletask |
Task范围一个实例 |
AD |
复用已有的activity,并且把当前activity上面的其他activity从任务栈清空 |
浏览器底层应用webkit内核,申请资源大 |
同一个task只存在一个实例 |
singleInstance |
操作系统范围一个实例 |
|
创建单独的任务栈,由他开启的其他activity在其他任务栈启用。 |
如地图共享 |
有线程安全问题 |