给定一个具有多个子域的 Web 应用程序。用户能够从一个子域导航到另一个子域。子域名的数量不固定(用户注册时可以创建新的子域名)。我正在尝试在意图过滤器的主机名中使用通配符(例如 *.example.com),通过 bubblewrap 实现 TWA。为此,我使用以下行调整了 app uild.gradle 文件:
resValue "string", "hostName", "*.example.com"
我还为每个子域和根域创建了正确的 /.well-known/assetlinks.json 端点。 SHA256 指纹正确。
这足以让它在我的个人设备上运行,甚至在 Android 模拟器上运行。我可以轻松地在子域之间切换,而无需使用网址栏。但对其他人来说却并非如此。其他人仍然会看到应用程序页面呈现为自定义选项卡(带有 URL 栏)。该解决方案似乎无法提供确定性结果。
我知道有关于创建多源 TWA 的很棒的文章,但据我了解,它仅适用于固定数量的(子)域。
有人可以帮我找到正确的解决方案吗?
Google Bubblewrap 项目成员已确认 TWA 不支持通配符子域名,请参阅此处:
https://github.com/GoogleChromeLabs/bubbblewrap/issues/661#issuecomment-1108374595
<meta-data
android:name="android.support.customtabs.trusted.ADDITIONAL_TRUSTED_ORIGINS"
android:resource="@array/additional_trusted_origins" />