AFAIK,startActivityForResult
无法与launchMode singleInstance here一起正常使用。最近,我发现它在Android Lollipop(5.0)上运行良好,并且找不到描述它的官方文档。我认为它同时也与任务和堆栈相关。有没有人可以提供有关此信息或解释的信息或解释?
谢谢:)
最佳答案
https://stackoverflow.com/questions/8960072/onactivityresult-with-launchmode-singletask
这是一个简短的解释。
答案显示在类ActivityStackSupervisor的函数startActivityUncheckedLocked中。在Android 5.x之前,启动 Activity 时,它将首先检查launchMode并将FLAG_ACTIVITY_NEW_TASK添加到launchFlags中(如果launchMode是singleTask或singleInstance)。如果 Activity 的launchFlags包含FLAG_ACTIVITY_NEW_TASK,它将立即发送回取消消息,并让新任务继续正常启动而不依赖其发起者。