我有两个不同的应用程序,分别称为App A和AppB。
应用A:带有启动模式的ActivityA->“ singleTask”
应用B:带有启动模式->“ singleInstance”的ActivityB
脚步:
打开应用程序A,它将打开ActivityA,ActivityStack:ActivityA
使用startActivityForResult(),ActivityStack启动App B:ActivityA> ActivityB
通过活动B的Intent打开ActivityA,ActivityStack:ActivityA> ActivityB> ActivityA
如您所见,活动堆栈通过调用onNewIntent()方法创建了活动A的新实例,而不是返回到活动A的相同实例。
我不确定,这是因为活动开始了吗?在这种情况下,请帮助提供适当的解决方案。谢谢。
最佳答案
您不能使用singleTask
启动Activity
startActivityForResult()
。如果启动Activity
并期望返回结果,则必须在同一任务中启动目标Activity
。因此,当您调用singleTask
时,Android将忽略startActivityForResult()
启动模式。