对具有相同路径的多个主机的 Intent 过滤器支持

Intent filter support for multiple hosts with same path

我的应用程序应该可用于深层链接并且支持多个主机(具有相同路径)。如果不复制所有路径条目,这怎么可能?

示例:

<data android:pathPattern="myPath1" android:host="myDomain1" android:scheme="https" />
<data android:pathPattern="myPath1" android:host="myDomain2" android:scheme="https" />

我不喜欢这个解决方案,因为必须复制所有应用程序链接(只是为了支持不同的域)。

主机只是域名结尾不同,例如www.mydomain.*,但据我所知,属性 android:host 只支持星号作为主机的第一个字符。

你不能一次性做到这一点 <data>

正如您已经提到的,主机属性的通配符仅限于子域,因此您不能在您的情况下使用它。

您别无选择,只能使用多个 <data> 具有相同的路径但不同的主机。

不过,如果您的路径模式足够复杂,您可以使用 android:host="*" 并基本上捕获所有主机。但是这样你会冒着与其他域发生冲突的风险。