android之Activity的Tasks and Back Stack

Activity任务和返回栈: 
什么时候在同一个task呢,不是说一个application里的activity才能在同一个task里, 
developer.android.com里说: 
Even though the activities may be from different applications, Android maintains this seamless user experience by keeping both activities in the same task. 
意思是: 
不同的应用里的activity可以在同一task。比如,在你的app里要调用发送email的功能,你回send一个intend去调用email的activity,这时这个email的activity便在你的之前的activity的task内,返回就回到你的activity啦。 

另外一个情况,在同一个application里,也可以制定一个activity单独使用新的栈stack, 
(默认activity都在被创建的activity里的task里), 
在你想返回这个activity后,不想回到被创建的activity的时候,你可以指定使用单独的task。 
比如一键清理的快捷方式。 

如何指定,目前我知道两种: 
都需要<action android:name="android.intent.action.MAIN" />表示开始一个task 
1,使用activity的launchmode属性-singleInstance 
2,使用activity的launchmode属性-android:taskAffinity,eg: 
  android:taskAffinity="com.hiapk.kbatterydoctor.shortonkey" 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值