Activity的启动模式
- standard 默认标志的启动模式,每次startActivity都是创建一个新的activity的实例,适用于绝大数情况
- singleTop 单一顶部,如果要开启的activity 在任务栈的顶部已经存在,就不会创建新的实例,而是调OnNewIntent()方法。应用场景:浏览器书签,避免栈顶的activity被重复的创建,解决用户体验问题。
- singleTask 单一任务栈,activity只会在任务栈里面存在一个实例,如果要激活的activity,在任务栈里面已经存在,就不会创建新的activity,而是复用这个已经存在的activity,应用场景:浏览器activity,整个任务栈只有一个实例,节约内存和cpu的目的,注意:activity还是运行在当前应用程序的任务栈里面,不会创建新的任务栈。
- singleInstance 单一实例,整个手机操作系统里面只有一个实例存在。不同的应用去打开这个activity,共享,公用的通一个activity。他会运行在自己单独,独立的任务栈里面,并且任务栈里面只有他一个实例存在。应用场景:呼叫来电界面