所以我的问题是:
- 我启动 App1,打开 Screen1,然后打开 Screen2。
- 我按 Home 键,将 App1 留在后台。
- 我打开 App2 并启动 App1.Screen1FLAG_ACTIVITY_NEW_TASK https://developer.android.com/reference/android/content/Intent#FLAG_ACTIVITY_NEW_TASK期望位于之前留下的任务中的 App1.Screen2 上。相反,我在 App1.Screen1 上,系统调用onNewIntent() https://developer.android.com/reference/android/app/Activity.html#onNewIntent(android.content.Intent).
当我按返回时,它会再次显示 Screen2 和 Screen1。
我不使用任何其他意图标志或启动模式。
有人可以解释发生了什么事吗?
Android 有大量与活动和任务相关的错误。
尽管如此,谷歌改变了操作系统版本之间的任务行为,并且没有通知开发人员,这是最令人恼火的事情。
如果您没有在活动(A 或 B)上设置任何标志,那么您描述的行为是WRONG.
对于所有说文档没有问题的人,请尝试以下操作:
- 使用 Activity A(启动 Activity)和 B(两者均使用默认启动模式)创建应用程序。
- 启动应用程序 - 仅使用活动 A 创建任务。
- 从活动 A 中的按钮启动活动 BFLAG_ACTIVITY_NEW_TASK https://developer.android.com/reference/android/content/Intent#FLAG_ACTIVITY_NEW_TASK.
- 单击该按钮几次,您将看到活动 B 在任务内创建了多次,这与文档所说的不同。
还有更多场景可以证明文档是坏/错。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)