Activity的四种启动模式

来源:互联网 发布:直销奖金制度软件 编辑:程序博客网 时间:2024/05/29 08:09

1、sdandard

sdandard是系统默认的启动方式,每次新建Activity都会在栈中新建一个Activity实例。用户退出程序时,需要顺序的把栈中的Activity挨个结束掉。

2、singleTop

在这种模式下,当启动一个新的Activity实例时,系统会自动检测任务栈顶是否有该Acitivity的实例,如果有就不再新建直接调用,如果没有就会新建实例,并放置在任务栈栈顶(即使任务栈中存在该实例,只要不是在栈顶,则都会创建新实例)。

3、singleTask

如果任务栈中已有该实例,则直接调用,并且把该实例之上的所有其他实例全部移出任务栈。如果栈中不存在该实例则新建实例放入任务栈。与singleTop的区别是一个只检查栈顶,一个检查整个任务栈。

4、singleInstance

与我们常用的浏览器原理类似,如果已经有别的应用启用了浏览器,则其他应用就会直接复用他的实例。如果是第一次调用浏览器则需要新建实例。