来自深层链接意图时,如何仅打开 1 个 android 应用程序实例?

问题描述

我有 3 个活动。

Splashscreen(Launcher Category) - launchmode singleTask

MainActivity - 启动模式 singleTask

ActivityOne - 启动模式正常

场景:

我正常打开应用程序。

SplashScreen --------> MainActivity --------> ActivityOne。

然后,我点击应用程序 X 上的深层链接,该链接重定向到我的应用程序。由于 Deeplink Activity 是我的启动画面,所以它首先打开。

启动画面 -------> MainActivity

现在,如果我转到最近的任务,它会向我显示 2 个应用程序。

我只想使用顶部的 MainActivity 打开我的应用程序的单个任务(在这种情况下)。

即使我设置了 singleTask 也会得到不同的 Task ID。

解决方法

您不应使用诸如 singleTask 之类的特殊启动模式。这些造成的问题多于它们解决的问题。它们适用于非常特殊的情况。没有它们,您的应用应该可以正常工作。