gpt4 book ai didi

android - android :launchMode and android:documentLaunchMode attribute?有什么区别

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:13:04 25 4
gpt4 key购买 nike

所以我一直在阅读有关任务、返回堆栈和概览屏幕 的文档,有一件事让我非常困惑。在阅读了 launchMode 之后:http://developer.android.com/guide/components/tasks-and-back-stack.html然后关于 documentLaunchMode 这里:http://developer.android.com/guide/components/recents.html我不知道它们有何不同!

两者都被描述为提供控制相对于当前任务(启动 Activity 的任务)的任务中新 Activity 的启动的方法。那么这两种模式有何不同呢?追加-document是什么意思?

以下是直接引用它们在 list 文件中的使用的文档:
启动模式: http://developer.android.com/guide/topics/manifest/activity-element.html#lmode
文档启动模式: http://developer.android.com/guide/topics/manifest/activity-element.html#dlmode

最佳答案

DocumentLaunchMode:

  • 更多与最近的任务屏幕相关
  • 允许同一 Activity 的多个文档出现在最近/概览屏幕中
  • 可能的值:

    1. "intoExisting" - 该 Activity 重用文档的现有任务(创建它的任务)。使用此值与设置 FLAG_ACTIVITY_NEW_DOCUMENT 标志相同,但不设置 FLAG_ACTIVITY_MULTIPLE_TASK 标志。
    2. “始终” - 该 Activity 为文档创建一个新任务,即使文档已经打开。这与同时设置 FLAG_ACTIVITY_NEW_DOCUMENT 和 FLAG_ACTIVITY_MULTIPLE_TASK 标志相同。
    3. “无” - (默认) - 该 Activity 不会为该 Activity 创建新任务。只有在设置了 FLAG_ACTIVITY_NEW_TASK 时才会创建新任务。概览屏幕按默认方式处理 Activity :它显示应用程序的单个任务,该任务从用户上次调用的任何 Activity 中恢复。
    4. “从不” - 即使 Intent 包含 FLAG_ACTIVITY_NEW_DOCUMENT,此 Activity 也不会在新文档中启动。设置此项会覆盖 FLAG_ACTIVITY_NEW_DOCUMENT 和 FLAG_ACTIVITY_MULTIPLE_TASK 标志的行为(如果在 Activity 中设置了其中任何一个),并且概览屏幕会显示应用程序的单个任务,该任务会从用户上次调用的任何 Activity 中恢复。

launchMode:

  • 更多与返回堆栈相关
  • 处理应如何启动 Activity (创建并与任务相关联)
  • 可能的值:

    1. “标准” - (默认) - 系统总是在目标任务中创建 Activity 的新实例并将 Intent 路由到它。
    2. “singleTop” - 如果 Activity 的实例已存在于目标任务的顶部,系统将通过调用其 onNewIntent() 方法将 Intent 路由到该实例,而不是创建 Activity 的新实例。
    3. “singleTask” - 系统在新任务的根部创建 Activity 并将 Intent 路由到它。但是,如果 Activity 的一个实例已经存在,系统会通过调用其 onNewIntent() 方法将 Intent 路由到现有实例,而不是创建一个新实例。
    4. “singleInstance” - 与“singleTask”相同,不同之处在于系统不会在持有该实例的任务中启动任何其他 Activity 。该 Activity 始终是其任务的唯一成员。

Logical Relationship: For values other than "none" and "never" (documentLaunchMode) the activity must be defined with launchMode="standard". If this attribute is not specified, documentLaunchMode="none" is used.

关于android - android :launchMode and android:documentLaunchMode attribute?有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32154059/

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