Android 中有四种启动模式
activity是交由activity栈(任务栈)管理的
1.standard (标准 默认启动模式)
会在启动时创建一个新实例入栈,所以每次打开都是一个新的界面
2.singleTop (栈顶)
当启动activity时,有相同的activity在前台与用户交互,就复用这个activity,回调onNewIntent()方法,避免栈顶的activity被重复的创建;如果没在栈顶,依然会创建新的实例加在栈顶
3.singleTask(栈内)
类似singleTop,也是避免重复创建,唯一不同的是,当启动activity时,有相同的activity在栈内,会复用此activity,回调onIntent(),并清空此activity之上所有activity
4.singleInstance(单例)
顾名思义,单一实例,整个手机操作系统里面只有一个实例存在。不同的应用去打开这个activity 共享公用的同一个activity
使用
在AndroidManifest.xml
android:launchMode="singleTask"