【问题标题】:Universal link does not work with webpage links通用链接不适用于网页链接
【发布时间】:2019-07-03 10:08:45
【问题描述】:

我知道在这个问题上有很多类似的问题,我已经尽力关注其中的许多问题,但我的问题仍然没有解决。任何帮助将不胜感激。

我有一个运行 ASP.NET MVC 的 AWS 服务器,并且我已将文件 apple-app-site-association 放在 .well-known 文件夹下(使用适当的 Web.config 来分配 mime 类型)。我认为故事的这一部分没有配置错误,原因如下:

  1. 我在安装我的应用程序时查看 iPhone 控制台日志,它在访问我的 apple-app-site-association 文件时没有报告错误。
  2. 如果我将链接粘贴到 Note 中,通过单击该链接,它确实会直接打开我的应用程序(不提示任何内容)。
  3. 当我扫描包含链接 URL 的二维码时,它会提示使用我的应用程序打开它。

但是,如果我的网页包含使用 <a href="..."> 元素的相同链接,当我使用 Safari 或 Chrome 打开该网页时,单击该链接甚至不会提示我的应用程序;它只是在浏览器中打开链接。无论我如何尝试,我都无法创建这样的链接来打开我的应用程序。

我在使用 Validation Tool 测试我的 URL 时确实遇到了问题,但我不知道原因。它只是说“无法提取应用程序链接所需的信息”,没有任何可以帮助我识别问题的额外信息。此外,为什么测试失败,但上面的 2. 和 3. 有效?没看懂。

另外,我确实通过了Branch 的测试。

相关链接的 URL 是 https URL,与包含它的网页具有相同的域。

我可能应该提到一件事:当直接访问该 URL 时,服务器将响应服务器端重定向(取决于用户代理到 App Store 或 Google Play)。我还尝试修改该 URL,使其响应包含客户端重定向的普通网页,但这没有区别。我网页上的链接仍然在浏览器中打开,而不是打开我的应用程序。在那个带有客户端重定向的新页面中,它会提示我是否要打开 App Store,如果我选择否,然后将页面向下拖动一点,我确实会看到选项“在 App 中打开 *** " 出现(另一个证明事情应该是正确的),但这不是我想要的;我想通过链接直接打开我的应用程序(例如 Instagram 等)。

【问题讨论】:

    标签: ios asp.net-mvc amazon-web-services safari ios-universal-links


    【解决方案1】:

    经过两天的挖掘,我终于找到了答案。问题正是因为包含链接的网页和链接 URL 属于同一域。根据this page(虽然是中文),从iOS v.9.2开始,通用链接将直接打开我的应用程序,而不提示,只有当页面和链接不属于完全相同的域时。这意味着使用不同的子域也可以,而且我刚刚尝试过。

    这也提示大家不用太在意官方Validation Tool;没有通过那里的测试并不一定意味着你做错了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-01-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-22
      • 1970-01-01
      • 2015-02-09
      • 1970-01-01
      相关资源
      最近更新 更多