taskAffinity属性简介

注意点:

1、必须和FLAG_ACTIVITY_NEW_TASK结合使用,否则不起作用

2、属性值是一个字符串,只要满足包名的命名就可以,eg:“abcdfs.”,  "dfsfe.fasdf.dfsf",

但是直接用一个字符串不带“.”这个符号,则无法安装,会报错

Installation failed with message INSTALL_FAILED_USER_RESTRICTED: Invalid apk.

使用:

1、intent添加FLAG_ACTIVITY_NEW_TASK标志:

同一应用,相同亲和力,在同一任务栈创建打开activity;

同一应用,不同亲和力,在不同任务栈创建打开activity。

不同应用,不同亲和力,在不同任务栈中创建打开activity;

不同应用,相同亲和力,还是在不同一栈中创建打开activity!!!(验证的结果和网上搜到的不同)

 

2、intent设置allowTaskReparenting属性为true,亲和度都使用默认的:

应用1中 有activity one,应用2中 有activity two;

在应用2中启动activityone, activityone和应用2的活动  在 同一个任务栈中,

打开应用1启动activityone,activityone移动到应用1的活动任务栈里面作为栈顶了,设置此属性为true后,这个activity可以移动所在栈。

添加FLAG_ACTIVITY_NEW_TASK标志后,就是在不同的任务栈

 

你可能感兴趣的:(Android,安卓开发遇到问题总结)