加载模式便是决定以哪种方式启动一个跳转到原来某个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在其他任务栈启用。 | 如地图共享 | 有线程安全问题 |