我有两个不同的应用程序,分别称为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()启动模式。

10-08 09:01