Acitvity的四种启动模式
a、standard默认模式,在这个模式下,每次Activity启动都会实例化一个新的Activity,可以有多个相同的实例,也允许多个Activity进行叠加使用。
b、singleTop在这种模式下,可以有多个实例,但是不允许多个相同的Activity进行叠加。就是说:如果某个Activity处于栈顶的时候,那么启动相同的Activity,不会创建新的实例,而是会调用onNewIntent方法返回之前已经实例化的Activity。
c、singleTask在这种模式下,同一个应用程序下,只允许有一个实例,如果当前将要启动的Activity不存在,那么则在当前task栈中实例化一个新的activity并压入栈顶,如果已经存在该Activity的实例,那么调用onNewIntent方法返回之前已经实例化的Activity,并且销毁掉之前位于该实例之上的所有的Activity。
d、singleInstance在这种模式下,activity只有一个实例,并且这实例,独立运行在一个task栈中,这个task栈只允许有1个实例,不允许有其他activity的实例。