Android深度链接:每个子域都会触发应用程序选择器
因此,我有一个深度链接的应用程序,可以打开公司网站的链接。 我通过向活动标记添加Android深度链接:每个子域都会触发应用程序选择器,android,deep-linking,Android,Deep Linking,因此,我有一个深度链接的应用程序,可以打开公司网站的链接。 我通过向活动标记添加意图过滤器来实现这一点,如下所示: <intent-filter > <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <categor
意图过滤器来实现这一点,如下所示:
<intent-filter >
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="*.company.com"
android:scheme="https" />
</intent-filter>
问题是该网站有多个子域,每个子域都会触发应用程序选择器。(category1.company.com
,category2.company.com
等)
如果它只使用一个域,那么应用程序选择器在打开主页时只会出现一次,用户将选择在浏览器中继续“只出现一次”,并在不中断的情况下浏览网站
对于子域,每次用户导航到不同的子域时,他都会看到应用程序选择器,并且必须再次单击“仅一次”
是否有任何方法可以将应用程序配置为仅在您第一次进入该域时显示应用程序选择器,而不是在每个子域中显示应用程序选择器?您是否在同一意图过滤器中尝试了多个数据块
<data
android:host="category1.company.com"
android:scheme="https" />
<data
android:host="category2.company.com"
android:scheme="https" />
..您是否在同一意向过滤器中尝试了多个数据块
<data
android:host="category1.company.com"
android:scheme="https" />
<data
android:host="category2.company.com"
android:scheme="https" />
..改用,这样android就不会询问,只需打开你的应用程序。
从Android 6开始,您可以使用通配符来包含所有子域
改用,这样android就不会询问,只需打开你的应用程序。
从Android 6开始,您可以使用通配符来包含所有子域
请参阅尝试将android:host=“*.company.com”
更改为android:host=“company.com”
尝试在中添加android:pathPrefix=“/yourpath”。这个链接可能会有帮助android:host=“company.com
具有相同的功能effect@Baba我看不出添加路径前缀有什么帮助。我不想更具体地使用url筛选器。请参阅尝试将android:host=“*.company.com”
更改为android:host=“company.com”
尝试添加android:path前缀=“/yourpath“在。这个链接可能会有帮助<代码>安卓:主机=“company.com
具有相同的effect@Baba我看不出添加路径前缀有什么帮助。我不想对url过滤器说得更具体。我们有几个子域,所以我会尽量避免添加它们,因为这不会改变行为。在子域之间导航时仍会显示“应用程序选取器”对话框。我们有几个子域,所以我会尽量避免添加它们,这样不会改变行为。在子域之间导航时,仍会显示“应用程序选取器”对话框。