【发布时间】:2021-07-16 18:38:03
【问题描述】:
我对启动模式的文档有点困惑。具体来说,文档提到:
堆栈中的活动永远不会重新排列,只会推送和弹出 从堆栈中
但稍后在FLAG_ACTIVITY_NEW_TASK 部分提到:
如果您现在开始的活动的任务已经在运行, 该任务被带到前台并恢复其最后状态 并且活动在 onNewIntent() 中接收到新的意图。
这里没有说明该活动是否位于堆栈顶部,这让我想知道如何在不重新排列堆栈的情况下实现这一点。
因此,例如,如果我们有活动 A 和 B 并且 A 启动 B:
A
现在如果B 启动A 和FLAG_ACTIVITY_NEW_TASK 是否意味着它将恢复之前的实例? IE。返回堆栈将是:
B 或者我们会有:
A
【问题讨论】:
-
在
adb shell dumpsys activity的帮助下测试应该相当容易。
标签: android android-intent android-activity android-task