Activity的四种启动模式

singletop启动模式
 
 singletop 单一顶部模式 在activity的配置文件中设置android:launchMode="singleTop"

    如果任务栈的栈顶存在这个要开启的activity,不会重新的创建activity,而是复用已经存在的activity。保证栈顶如果存在,不会重复创建。
    应用场景:浏览器的书签

singletask和singleinstance启动模式

   singetask 单一任务栈,在当前任务栈里面只能有一个实例存在
    当开启activity的时候,就去检查在任务栈里面是否有实例已经存在,如果有实例存在就复用这个已经存在的activity,并且把这个activity上面的所有的别的activity都清空,复用这个已经存在的activity。

 保证整个任务栈里面只有一个实例存在
    
    应用场景:浏览器的activity

    如果一个activity的创建需要占用大量的系统资源(cpu,内存)一般配置这个activity为singletask的启动模式。

    singleInstance启动模式非常特殊, activity会运行在自己的任务栈里面,并且这个任务栈里面只有一个实例存在
    如果你要保证一个activity在整个手机操作系统里面只有一个实例存在,使用singleInstance
    应用场景: 来电页面 

原文地址:https://www.cnblogs.com/xufengyuan/p/5907230.html