android启动模式及使用场景

  • standard --默认的标准启动模式

启动多少次就会有多少个实例被压到栈中,默认就是标准的启动模式

应用场景: 默认的应用场景

  • singleTop ---单一顶部模式

如果要启动的activity已经存在了栈顶--就是当前显示的就是它本身自己,这个时候就不会再启动一个新的界面。只要不是在栈顶,那么特点与标准的启动模式一样。

应用场景: 一般是为了避免出现一些奇怪的用户体验。 启动100次短信编写界面。

  • singleTask --单一任务模式

设置了这种启动模式的界面,在栈中只会存在一个实例,如果要启动的界面已经存在过实例,那么将直接复用该实例,并且把该实例与栈顶之间的其他实例对象全部移除掉。相当于是它位于栈顶。

如果位于栈顶,那么实际上就是与singleTop没什么区别。

应用场景: 如果一个界面极其的消耗内存CPU的开销,那么就应该做场singleTask的启动模式

浏览器的 BrowserActivity

  • singleInstance --单一实例模式

如果哪一个activity设置了这种启动模式,那么只要一启动,就会把这个activity的实例放到一个独立的栈中,里面有且只有它自己一个实例, 以后如果还启动这个activity,将不会创建新的实例,而是把它所在的栈移动到最前面显示给用户看

一个应用可以存在多个任务栈,如果有多个任务栈,要切换显示界面,实际上就是切换任务栈的先后顺序。

应用场景: 如果一个界面在单位时间内打开的频率非常的高,一天可能要打开几百次,甚至几千、几万次。那么这个界面应该做成singleInstance 来电的界面和 紧急呼叫的界面

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值