我正在尝试进行深层链接,以便当有人从移动浏览器打开链接时,它会打开应用程序,如果已安装或打开游戏商店链接以下载应用程序。
这是我的URI:
intent://scan/#Intent;scheme=com.example.android;package=com.example.android;end
当我在Android上的Mozilla Firefox应用程序中输入此内容时,如果安装了它,则会打开我的应用程序,如果未安装,则会打开播放商店链接。但是,当我在Chrome中键入相同的内容时,它只是进行谷歌搜索,而不是打开应用程序或播放商店。我的解决方案有什么问题,我该如何使其发挥作用?
答案 0 :(得分:12)
这是Chrome 40+中已知的wontfix
错误(有关完整故事,请参阅Chromium项目凭单here。)
从本质上讲,Chrome团队认为,如果用户实际上输入某些内容到地址栏中,则不会发生重定向。正如您所发现的,这与所有其他浏览器中的行为相反。
幸运的是,用户不太可能手动输入intent://
URI。如果您将URL包装在网页上的链接中,或提供指向其他页面的链接,然后发出某种重定向(以便您可以检测到用户代理,而不是显示“已损坏的”intent://
链接其他浏览器上的用户),它应该正常工作。
如果您不想处理所有这些边缘情况,您还可以尝试免费服务,例如Branch.io (完全披露:我在团队中)。