gpt4 book ai didi

android - singleTask 的多个 Activity

转载 作者:行者123 更新时间:2023-11-29 16:57:23 28 4
gpt4 key购买 nike

我对 Activity 启动模式感到非常困惑。这是场景。

Activity A - main, launcher with singleTask launch mode Activity B - singleTask 启动模式Activity C - 标准启动模式

这就是我正在做的事情

Activity A> Activity B> Activity C

然后我按下主页按钮。然后我从最近的应用程序中恢复该应用程序。实际发生的是

Activity A

但是我看了文档,resume之后应该是这样的

Activity A > Activity B

还是我遗漏了什么?

最佳答案

好吧,很大程度上取决于您如何为 list 中的各种 Activity 设置 taskAffinity

假设您对其进行配置,使 Activity A 和 Activity B 具有不同的 taskAffinity(这是您应该配置的方式) .当您启动您的应用程序时,Android 会创建一个包含 A 的新任务。当您从 A 启动 B 时,Android 应该创建另一个仅包含 B 的新任务。包含A 的任务被发送到后台。您现在应该有 2 个任务,一个只包含 A,一个只包含 B。当您从 B 启动 C 时,第二个任务现在应该包含 B->C。当您按下主页按钮时,第二个任务将被发送到后台。

现在,当您查看最近任务列表时,您实际上应该会看到应用的 2 个任务。根据您选择的任务,您将获得仅包含 A 的任务或包含 B->C 的任务。

这就是为什么您不应该使用特殊启动模式 singleTasksingleInstance 的原因,因为它们会做很多您意想不到的事情。如果您忽略此建议并无论如何使用这些启动模式,您必须了解 taskAffinity 如何影响 Activity 在各种任务中的启动方式,并且您还需要了解您可能最终会遇到多个任务,在这种情况下,您需要为用户提供一种从最近任务列表返回到正确任务的方法。这也意味着您可能需要为任务提供不同的标签和/或为任务提供不同的图标,以帮助用户找到要恢复的正确任务。

关于android - singleTask 的多个 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44550600/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com