android 中 LaunchModes 的实际用例是什么?
what are the real-world use cases of the LaunchModes in android?
什么是一些应用程序示例或用例,其中(singleInstance、singleTask、singleTop)用于必要的目的。即为什么人们会偏爱一种启动模式而不是另一种?到目前为止,我对它们的体验是严格的笔记,因此了解它们的使用位置会很有帮助。谢谢!
据我所知,这意味着您不能启动一个 activity 的多个实例。
在我的示例中,我在主启动器 Activity
中使用 singleInstance
,因为它有 Fragments
,并且它是通过通知意图启动的。
如果在用户触摸 "home" 按钮后将 Activity
发送到后台,我不希望它通过通知意图从后台启动,因为它会显示最后看到的片段。如果我设置 singleInstance
,它将始终启动 activity 的新实例并显示主要片段。
在我的例子中,我不能使用 singleTask
,因为它在堆栈中保存我的应用程序的其他活动,但将主要的 activity 放在最上面。我不需要堆栈中的历史记录。
singleTop
仅当 activity 不在堆栈顶部时才在 activity 上启动新实例。如果它在顶部,它会从后台启动,这就是我的应用程序不需要的。
希望我说清楚了:)
什么是一些应用程序示例或用例,其中(singleInstance、singleTask、singleTop)用于必要的目的。即为什么人们会偏爱一种启动模式而不是另一种?到目前为止,我对它们的体验是严格的笔记,因此了解它们的使用位置会很有帮助。谢谢!
据我所知,这意味着您不能启动一个 activity 的多个实例。
在我的示例中,我在主启动器 Activity
中使用 singleInstance
,因为它有 Fragments
,并且它是通过通知意图启动的。
如果在用户触摸 "home" 按钮后将 Activity
发送到后台,我不希望它通过通知意图从后台启动,因为它会显示最后看到的片段。如果我设置 singleInstance
,它将始终启动 activity 的新实例并显示主要片段。
在我的例子中,我不能使用 singleTask
,因为它在堆栈中保存我的应用程序的其他活动,但将主要的 activity 放在最上面。我不需要堆栈中的历史记录。
singleTop
仅当 activity 不在堆栈顶部时才在 activity 上启动新实例。如果它在顶部,它会从后台启动,这就是我的应用程序不需要的。
希望我说清楚了:)