1、standard
默认模式。默认创建新实例。可以共存多个相同实例,相同activity叠加。
2、singleTop
activity在栈顶,启动相同activity,不会创建新实例,而会调用onNewIntent方法。
注意:相同Activity,用for循环或者双指同时点击activity不会执行onNewIntent。activity1执行onCreate然后按返回activity1执行onDestroy--->activity2执行onCreate, 再按返回activity2执行onDestroy。
没有违背相同实例不能在栈顶共存原则。但是不适合快速启动相同activity避免重复原则。可参考activity重复跳转
3、singleTask
只有一个实例。在同一个应用中启动,若Activity不存在,则在当前task创建;若存在,会把task中它之上的activity destroy掉并调用他的onNewIntent方法。可用于activity栈中去除重复。
4、singleInstance
只有一个实例;加强singleTask模式,仅仅单独位于一个任务栈;
常用于Launch、锁屏键的应用等;整个系统仅存在一个,一般不会用到。
网友评论