Activity - 管理任务(一) 处理亲和性 (taskAffinity)

本文介绍了Android中Activity的任务亲和性(taskAffinity)概念,如何通过设置`taskAffinity`属性改变Activity的亲和性,以及在FLAG_ACTIVITY_NEW_TASK标记和allowTaskReparenting属性为true时如何影响Activity的任务归属。了解这些可以帮助开发者更好地管理Android应用的任务和回退栈。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 概念

“亲和性”表示 Activity 倾向于属于哪个任务。

默认情况下,同一应用中的所有 Activity 彼此具有亲和性。
因此,在默认情况下,同一应用中的所有 Activity 都倾向于位于同一任务
不过,可以修改 Activity 的默认亲和性。

不同应用中定义的 Activity 可以具有相同的亲和性,
或者在同一应用中定义的 Activity 也可以被指定不同的任务亲和性。

2.使用方法

您可以使用 元素的 taskAffinity 属性修改任何给定 Activity 的亲和性。

taskAffinity 属性采用字符串值
该值必须不同于 元素中声明的默认软件包名称
因为系统使用 该名称 来 标识应用的默认任务亲和性

3. 亲和性可在两种情况下发挥作用:

3.1 当启动 Activity 的 intent 包含 FLAG_ACTIVITY_NEW_TASK 标记时

默认情况下,新 Activity 会启动到调用 startActivity() 的 Activity 的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值