taskAffinity与allowTaskReparenting与launchMode之间的联系解读

1、taskAffinity与allowTaskReparenting联合使用

allowTaskReparenting 如果为false,此情况下也就没多大意义了。倘若为true,如果当此Activity 进入后台时候(home键),就会移入taskAffinity指定的task任务中。比如 :你的app1打开浏览器activity1--->home键,打开浏览器应用,就会显示activity1。

注意:如果launcheMode:singleTask,为浏览器应用的rootTask。如果为Standar则不是。

2、taskAffinity与launchMode之间的关系

launchMode 为singleTask的情况下关系才体现的出来。在之前的博客中《 

Android启动模式:singleTask的深究

》提到的 singleTask并不一定创建新的task的问题。其根本的原因在于:当启动singleTask的Activity时候,就会寻找taskAffinity(默认值为app指定的,如果没有就是包名) 所指定的任务名称,如果不存在,则就会新建task,如果存在则执行clearTop操作,并在此task中启动此Activity。

(为啥说只和singleTask有关系,其他模式:standar模式启动,此Activity的所在的task为启动它的应用所在的task。singleTop同样如此。singleInstance,单例。为了保持此task仅有一个实例,此模式下,此属性忽略。)



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值