Android-链接的意图过滤器,以在浏览器外部打开应用程序



我已经在我的Android应用程序中成功设置了一个意图过滤器,以基于许多关于此主题的帖子之一从移动浏览器中打开该应用程序。

但是,问题在于,当我希望它在单独的应用程序过程中在浏览器外部打开时,本机应用程序正在浏览器内打开。

by内部,我的意思是,当我按下最右边的" Active Apps"按钮以查看正在运行的内容时,我看到我当前的应用程序仍然是浏览器应用程序,并且没有打开单独的应用程序称为MyApp。好像浏览器将我的本机应用程序嵌入本身,因此浏览器正在执行我的应用程序。

在外面,我的意思是我希望能够看到两个活动应用程序在按下链接后运行:(1)我从中启动的浏览器应用程序(2)我的myApp应用程序。

这是我在androidmanifest.xml中设置的Intent-filter:

<intent-filter>
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />
    <action android:name="android.intent.action.VIEW" />
    <data android:scheme="myapp" android:host="mypath" />
</intent-filter>

我从浏览器中打开的网页链接到此链接:

<a href="myapp://mypath">Open app</a>

我如何强制该应用在浏览器外部打开?一个注释是,当应用程序启动时,我看不到我在其他应用程序中看到的"应用程序选择器"。

by内部,我的意思是,当我按下最右边的'Active Apps'按钮以查看正在运行的内容时,我看到我当前的应用仍然是浏览器应用程序,并且没有单独的应用程序打开称为MyApp。

您的活动是在浏览器的任务中启动的。

好像浏览器将我的本机应用程序嵌入本身,并且本身正在执行我的应用程序。

那不是发生的事情。

如何强制该应用在浏览器外部打开?

如果您希望活动出现在单独的任务中...理想情况下,那将发生默认情况下。令我惊讶的是,浏览器在启动您的活动时不会添加FLAG_ACTIVITY_NEW_TASK

说,您的<activity>元素上的android:launchMode="singleTask"应该给您所需的行为。

相关内容

  • 没有找到相关文章

最新更新