Activity的启动模式笔记

扔物线的视频地址 https://www.bilibili.com/video/BV1CA41177Se

在不同的task 中打开同一个Activity 会被创建多个实例分别放入每一个task

singleTask 全局唯一

当其他task启动这个activity 的时候 它会和自己的task 一起 置于启动它的task的上方,这种方式的叠加只适合前台任务 当按home键盘或者多任务键的时候,重叠的task会马上 分离

android:allowTaskReparenting=“true”** android9.0 -10 失效了 11是好的

当启动这个activity 的时候它会在启动他的task上面,当时如果再启动他原本的app的时候 它会回到自己的task,并且之前启动他的task 里面已经不存在这个activity

singleInstance 一个task 中只有一个activity

在最近任务里看到的task 不一定还活着, 看不到的不一定死了 例如 singleinstance

android:taskAffinity="" 默认是app 包名

​ 当启动activity 会直接接入当前的task
​ 但对于设置了 android:launchMode=“singleTask” 的activity,系统会 先比较Activity的taskAffinity 是否 相同
​ 如果相同 正常入栈
​ 如果不同 activity会去寻找和它的taskAffinity相同的task入栈 如果找不到系统就会帮他创建一个Task,

任务列表显示的多个Task 它们的taskAffinity 需要不一样
如果taskAffinity一样 则只会出现最新的那个Task

android:launchMode=“singleTop”

​ 和(standard) 几乎一样启动时不考虑 taskAffinity
​ 唯一的区别是 singlTop 会重用栈顶的Activity

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值