首页 > 解决方案 > Android 任务和应用程序链接 - 当应用程序链接打开一个 Activity 时,检查哪个是任务中的前一个 Activity

问题描述

设想 :

在我的应用程序中,我启用了应用程序链接。因此,当触发应用链接时,我设置了一个虚拟对象AppLinkActivity (opens as "singleTask" to avoid creation of new task)来接收和处理通过应用链接接收到的 url。在处理 url 时,我必须检查应用程序是否显示“ DownloadActivity”,如果是,那么我必须显示一个对话框。

因此,当触发 App 链接时,我将拥有具有现有活动的现有任务,并且最重要的是 AppLinkingActivity。在这种情况下,我无法知道之前的活动是什么,因为我无法通过意图传递任何东西。

我想做的事

当通过应用程序链接打开 AppLinkingActivity 时,有什么方法可以找出last shown activity(of my app) before同一任务中的 AppLinkingActivity 是什么?

--或者--

如果我在清单中排除“singleTask”,则 AppLinkingActivity 将在新任务中打开。在这种情况下,有什么方法可以让我获得上一个任务中最后显示的(或最上面的)活动?如果是,我还需要一种方法来导航到上一个任务中最顶层的活动?在这种情况下,如果我只是finish()AppLinkingActivity,那么控件会返回到触发应用程序链接的源,例如浏览器或 gmail 应用程序等。

以上两个要求中的任何一个都可能吗?

标签: androidandroid-activityandroid-deep-linkandroid-app-links

解决方案


推荐阅读