standard 默认标准的启动模式,每次startactivity都是创建一个新的activity实例
singleTask 单一任务栈,activity只会在应用程序中存在一个实例,如果要激活的activity在任务栈中已经存在,就不会创建新的activity,而是复用这个已经存在的activity,调用onNewIntent()方法,并且清空当前activity任务栈上面的所有activity.
应用场景:浏览器activity,整个任务栈只有一个实例,节约内存和cpu的目的
注意:activity还是运行在当前应用程序的任务栈里面的,不会创建新的任务栈。
singleTop 单一顶部,如果开启的activity在任务栈的顶部已经存在,就不会创建新的实例,而是调用onNewIntent()方法
应用场景:浏览全书签,避免栈顶的activity被重复创建,解决用户体验问题。
singleInstance:单一实例,整个手机操作系统里面只有一个实例存在,它会运行在自己独立的,单独的任务栈里面,并且任务栈中只有他一个实例存在
应用场景:呼叫来电界面InCallScreen