Android: singleInstance和startActivityForResult

6
据我所知,startActivityForResult在使用 singleInstance 启动模式时存在问题,详见这里。但最近发现在 Android Lollipop(5.0)上已经正常工作,并且找不到官方文档对此的描述。我认为这也与任务和返回栈有关。是否有人可以提供一些相关信息或解释,或者其他任何信息?感谢 :)
1个回答

4

https://dev59.com/5mox5IYBdhLWcg3wzXal

这是一个简短的解释。

答案出现在ActivityStackSupervisor类的startActivityUncheckedLocked函数中。在Android 5.x之前,当启动一个活动时,首先会检查launchMode,并且如果launchMode为singleTask或singleInstance,则将FLAG_ACTIVITY_NEW_TASK添加到launchFlags中。如果活动的launchFlags包含FLAG_ACTIVITY_NEW_TASK,则会立即发送一个取消并让新任务继续正常启动而不依赖于其发起者。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接