0

我刚刚按照官方的在线 Android 指南在我的 Android 应用程序中设置了应用程序链接。我可以单击一个链接,我的应用程序就可以正常启动。

但是,我观察到不同的行为,具体取决于单击链接的位置。

  • 从 Gmail 应用程序中,我的应用程序启动并且一切正常。点击 ||| 屏幕底部的图标显示我的应用程序正在独立运行。
  • 从 Slack,我的应用程序启动并运行良好,但它似乎是 Slack 进程的一部分。后退按钮不起作用,如果我单击 ||| 屏幕底部的图标然后它显示我的应用程序似乎正在 Slack 中运行(只有一个窗口打开)。
  • 在 WhatsApp 中,与 Slack 相同。

这来自我的 AndroidManifest.xml:

            <intent-filter android:autoVerify="true">
                <action android:name="android.intent.action.VIEW" />

                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />

                <data
                    android:scheme="https"
                    android:host="mydomain.com"
                    android:path="/" />
            </intent-filter>

我怀疑这在某种程度上与 Slack 打开网络链接本身有关,但我不知道如何防止这种情况。这也不能解释 WhatsApp 的行为,因为 WhatsApp 似乎已经在 Chrome 中独立打开网络链接。

任何意见,将不胜感激!

4

1 回答 1

1

这实际上是 Android 中的默认设置——您的应用程序作为调用者堆栈的一部分启动。您需要在清单中将启动模式设置为 singleTask。请注意,如果活动已经在后台活动,这有时可能会导致调用 onNewIntent 而不是标准活动创建路径。

于 2020-03-21T22:11:53.473 回答