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

Posted

技术标签:

【中文标题】来自深度链接意图时如何仅打开 1 个 android 应用程序实例?【英文标题】:How to open only 1 instance of an android app when coming from deeplink intent? 【发布时间】:2021-07-25 03:38:02 【问题描述】:

我有 3 个活动。

Splashscreen(Launcher Category) - 启动模式 singleTask

MainActivity - 启动模式 singleTask

ActivityOne - 启动模式正常

场景:

我正常打开应用程序。

SplashScreen --------> MainActivity --------> ActivityOne.

然后,我单击 Application X 上的深层链接,该链接将重定向到我的应用程序。因为 Deeplink Activity 是我的 Splashscreen,所以它首先打开。

SplashScreen -------> MainActivity

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

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

即使我设置了 singleTask,也会获得不同的任务 ID。

【问题讨论】:

【参考方案1】:

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

【讨论】:

以上是关于来自深度链接意图时如何仅打开 1 个 android 应用程序实例?的主要内容,如果未能解决你的问题,请参考以下文章

打开相机意图时如何防止android应用程序方向

如何从意图中获取完整的深度链接网址?

Android 8.0+ 深度链接仅在应用程序被杀死时才首先打开启动器活动

如何强制仅打开设备摄像头以进行视频捕获意图?

Android 深层链接 - 不显示意图选择器弹出窗口,强制打开应用

安卓art模式如何打开切换