我已经在我的应用程序中设置了通用链接。
现在,在Safari浏览器中浏览我的网站并访问一个注册了通用链接的页面时,它会在Safari中打开并询问我是否要在我的应用程序中打开。
有没有一种方法能够始终在应用程序中打开?不提示在应用程序中打开,只要安装了就直接打开,否则在Safari中继续浏览。
我已经在我的应用程序中设置了通用链接。
现在,在Safari浏览器中浏览我的网站并访问一个注册了通用链接的页面时,它会在Safari中打开并询问我是否要在我的应用程序中打开。
有没有一种方法能够始终在应用程序中打开?不提示在应用程序中打开,只要安装了就直接打开,否则在Safari中继续浏览。
这里有两个不同的问题:
Apple对Universal Links的使用非常保守。在Safari中限制之一是不允许应用程序在用户已经浏览同一个站点时打开(这样做很有意义——如果用户在Safari中打开了一个站点而不是应用程序,如果该站点上的每个链接都试图打开应用程序,那么这可能会很烦人,尤其是如果应用程序没有正确配置深度链接路由)。
解决方法是为希望打开应用程序的链接使用单独的域名/子域名。例如,如果您的网站位于example.com
,则将任何想要打开应用程序的链接指向link.example.com
,然后将没有安装应用程序的用户重定向回主网站或前往App Store。这实际上是我们在Branch.io构建的系统(您可以考虑使用它而不是重新构建自己的系统!)
Universal Links在打开应用程序时甚至第一次都不会要求用户确认。它们总是立即打开应用程序,甚至没有请求网页,直到/除非用户明确禁用它们(这实际上相当容易做到)。您所描述的是自定义URI方案的行为,因此我怀疑您在Universal Link指向的页面上有某种自动重定向到应用程序的URI方案。在大多数情况下,这实际上并不是最好的想法,因为没有应用程序的用户将看到一个不好的错误消息。
app.link
服务在 Safari 13 上不再打开没有安装应用的 iPad 的 App Store。我猜是因为它像 Mac OS X Safari 一样运行。 - odinho - Velmont