如何解决Android深层链接-允许在组织域上使用assetlinks.json和子域URL?
我已经使用Android App Studio的App Links Assistant将我的URL映射到MainActivity.kt
,并且我可以单击电子邮件中的链接以在模拟器中打开我的应用程序。
精确声明的网址映射,例如https://myorg.com/open-in-app
,根据需要打开应用。
如果我通过实现HTTPS链接包装的电子邮件服务传递电子邮件,则必须使用子域。因此,例如,包装的链接可能看起来像
https://track.myorg.com/open-in-app/xyzzy
在iOS / Xcode中,我可以为给定应用设置多个域关联,并为here中所述的子域设置通配符。 iOS从子域的或组织域的apple-app-site-association
路径获取/.well-kNown
文件。 Apple建议在第一个实例here中使用组织域,这对于在多个子域上支持同一应用非常方便。
注意:在子域上托管assetlinks.json
文件是可能,但是这样做比较复杂(例如,使用CDN)。 https://track.myorg.com
通常映射到电子邮件服务,该服务将重定向到登录页面。对于未使用该应用程序的所有人,该链接将在其浏览器中打开。
在Android中,是否存在等效项,即将assetlinks.json
文件托管在组织域中的某个位置上,并且仍然深链接到具有子域的URL?
解决方法
在Android Studio模拟器(设备Pixel 2,Android API级别30)上进行测试。
assetlinks.json
文件可以从链接的组织域或链接的实际(子域)中选取。
子域还可以通过301重定向工作,这对于某些CDN(例如CloudFlare)是必需的。其他人(例如AWS CloudFront)可以直接托管文件。
另请参阅:this article
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。