iOS - 通用链接的错误

2023-12-28

我已按照此处概述的步骤在我的 iOS 应用程序中按照详细信息设置了通用链接:

如何设置通用链接 https://blog.branch.io/how-to-setup-universal-links-to-deep-link-on-apple-ios-9

它使用 Branch 和 Apple 验证器进行 100% 成功的验证。但现在我正在尝试测试成品,但遇到了麻烦。

如果我输入或点击指向我的网站的链接(例如 www.mydomain.com),Safari/Chrome/Facebook 会直接访问我的网站。

但是,如果我访问 Google,输入 www.mydomain.com 作为搜索,找到指向我的网站的链接并长按该链接,“在 MyApp 中打开”就是选项之一,并且效果很好。

为什么是这样?我要拔头发了!


遗憾的是,通用链接并非在所有地方都有效。从这一页 https://dev.branch.io/getting-started/universal-app-links/support/ios/#appsbrowsers-that-support-universal-links:

  • Messages | works
  • Mail | works
  • Whatsapp | works
  • Slack|如果设置为打开 Safari,而不是应用内浏览器(使用 SFSafariViewController),则有效
  • Safari|有条件地工作
  • Chrome|有条件地工作
  • Google|有条件地工作
  • Gmail|如果安装了 Chrome,则在 Chrome 中打开链接(不是通用链接)。否则,有条件地工作
  • Inbox|如果安装了 Chrome,则在 Chrome 中打开链接(不是通用链接)。否则,有效。
  • Twitter|有条件地工作
  • Facebook|有条件地工作
  • 脸书信使|有条件地工作
  • WeChat|有条件地工作
  • 兴趣|不工作
  • Telegram|不工作(使用 SFSafariViewController)

注意:有条件工作意味着它有时可以工作(即打开应用程序):

  • 如果将链接粘贴到浏览器 URL 字段中,通用链接将不起作用。
  • 通用链接与用户驱动一起工作<a href="...">元素点击跨域。示例:如果 google.com 上有指向 bnc.lt 的通用链接,它将打开该应用程序。
  • 通用链接不适用于用户驱动<a href="...">元素单击相同的域。示例:如果 google.com 上有一个通用链接指向 google.com 上的另一个通用链接,则它不会打开该应用程序。
  • 通用链接无法通过 Javascript 触发(在window.onload或通过.click()致电<a>元素),除非它是用户操作的一部分。
  • Google、Gmail、收件箱、Twitter、Facebook、FB Messenger、微信 - 通用链接仅在您已打开 Web 视图时才有效。换句话说,它们不能在应用程序内的提要/主视图中工作。再次,他们还must是跨域的,也就是说,如果您的用户位于 yourapp.com 上并且单击了 yourapp.com 的通用链接,则它将不起作用。但是,从 yourapp.com 单击到 bnc.lt 将触发链接充当通用链接并直接打开您的应用程序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

iOS - 通用链接的错误 的相关文章

随机推荐