activity启动模式 standard singletop singleTask singleInstence
standard(默认)
这个是android的Activity的默认模式,如果没有配置 android:launchMode ,则默认这个模式。
该模式下,一个Activity可以同时被添加到多个task中,且一个task可以有多个实例,且每次通过intent
启动时,都会生成一个新的实例。
singleTop
该属性和standard较类似,不同的地方就是,当当前Activity的实例在当前task的栈顶时,intent启动时
,则不生成新的实例,会重用(不生成新的实例)原有的实例,如果你显式指定intent的参数
FLAG_ACTIVITY_NEW_TASK。如果提供了FLAG_ACTIVITY_NEW_TASK参数,会启动到别的task里。
singleTask
该模式下,Activity只会有一个实例。如果某一个task中已有该Activity的一个实例存在,则不再启动新
的,每次都会被重用(重用就是如果该Activity在task的栈底,则会被调到栈顶),且可以和其他的
Activity共存于一个task中。
singleInstance
该模式和singleTask一样,唯一不同的就是,该模式下,Activity会独自拥有一个task,不会和其他
Activity公用,每次Activity都会被重用,且全局只能有一个实例
转载于:https://blog.51cto.com/oceanlee/1028305