Activity的四种启动模式为:standard singleTop singleTask singleInstance
standard 每次激活Activity的时候 都会将集合的Activity放入到任务栈中 这是默认的启动模式
singleTop 从字面上去理解 就是维持当前栈顶Activity的唯一 如果当前栈顶的Activity和将要打开的Activity是一样的将会被直接引用
singleTask 如何当前任务栈中 有存在需要激活的Activity 那么就会把当前的Activity移到栈顶 并把在当前Activity上的所有其他的Activity给移除
singleInstance 每次激活Activity 都会去新开一个任务栈 新开的任务栈中 只有一个当前的Activity
应用场景
1.第一种默认的启动模式就没必要说了
2.第二种模式一般都是为了用来避免多次打开重复的Activity,比方说 点击一个按钮 打开一个Activity 在短时间内多次点击 有可能会打开多个Activty 那么这种启动方式就能用于解决这种问题
3.第三种模式是为了使当前的Activity保持唯一性
4.第四种模式 可用于启动浏览器的时候 比方说多个应用程序都需要打开浏览器 都会先去判断当前的浏览器有没有打开 如果没有打开 就会去打开一个新的浏览器 如果已经打开了浏览器 就会在当前打开的浏览器中 去浏览应用需要访问的网页 我们浏览器运行的原理就是这一种