Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 各种启动活动模式的示例?_Android_Android Activity - Fatal编程技术网

Android 各种启动活动模式的示例?

Android 各种启动活动模式的示例?,android,android-activity,Android,Android Activity,所以我读到Android中有四种活动启动模式,如下所示 1) 标准:每次创建活动的新实例 2) 单顶部:与标准相同,只是如果活动位于堆栈顶部,则将使用相同的实例 3) 单个任务:每当创建此活动时,都会创建一个新任务。此外,所有任务中只有一个实例可用 4) 单个实例:将在新任务中创建活动,该任务将仅包含该活动。此外,只有该活动的一个实例可用于所有任务 到目前为止,我没有在我的活动中使用任何启动模式。所以默认情况下,我使用的是标准启动模式。 我在想,其他发射模式将用于哪些活动。 Android应用程

所以我读到Android中有四种活动启动模式,如下所示

1) 标准:每次创建活动的新实例

2) 单顶部:与标准相同,只是如果活动位于堆栈顶部,则将使用相同的实例

3) 单个任务:每当创建此活动时,都会创建一个新任务。此外,所有任务中只有一个实例可用

4) 单个实例:将在新任务中创建活动,该任务将仅包含该活动。此外,只有该活动的一个实例可用于所有任务

到目前为止,我没有在我的活动中使用任何启动模式。所以默认情况下,我使用的是标准启动模式。 我在想,其他发射模式将用于哪些活动。
Android应用程序(如搜索、地图)是否也有使用其他启动模式的活动?

这里有一些用途:

我曾经在一个活动中使用过single-top,该活动由蓝牙和wifi的两个异步任务调用,它们基本上在收到服务器的响应消息后立即启动。有时会有两条消息到达,并在相隔1秒的时间内双倍启动活动,这就是我发现启动模式的原因


就原生安卓应用而言,我想说很难说在启动模式下到底发生了什么,但我怀疑这条信息是否重要。你知道他们现在做什么,所以在适用时使用em:D

一般来说,只有两种常见模式:标准模式和单顶模式,标准模式允许你拥有同一活动的多个实例,例如,标准午餐模式的一个好主意是某人的个人资料,因为你的应用程序中可能有多个配置文件

但是,如果您正在实施大厅活动,您可能希望将其设置为单顶,因为您不希望在每次将某人送回大厅时启动新的大厅活动

还有另外两种模式:单个任务单个实例,它们都要求它们将成为堆栈的,它们之间的区别是单个实例也不允许堆栈中的任何其他活动

您可能会为某些安全应用程序使用单个实例,例如处理信用卡详细信息


而且单个任务可用于更新一些重要的用户信息,因此您需要确保始终保持最新状态。

有关详细信息,请参阅此链接