startActivity
中似乎存在一个bug。如果在AndroidManifest.xml中将activities设置为具有不同的
taskAffinity
的singleTop
,并在调用startActivity
时使用Intent.FLAG_ACTIVITY_NEW_TASK
,则可以在两个任务中创建两个活动(每个任务一个活动)。再次调用
startActivity
将返回到第一个活动/任务,并调用onNewIntent
。但是,第四次调用startActivity
将返回到第二个活动/任务,但是onNewIntent
未被调用。两个任务之间唯一的区别是它们的
taskAffinity
。某种程度上观察到了不对称的行为。但是,如果也使用
Intent.FLAG_ACTIVITY_SINGLE_TOP
,则会按预期调用onNewIntent
。看起来,在AndroidManifest.xml中的
singleTop
与Intent
中的Intent.FLAG_ACTIVITY_SINGLE_TOP
不同。其中包括以下代码:
...其中包括以下XML:
...