我有一个定制链接,目标是自定义网址架构,如
<a href="myapp://"
如果已安装此链接,则会打开本机iOS应用。在Chrome上,如果未安装该应用,则该链接会转发到应用商店,这是必需的行为。使用Safari时出现问题。在Safari上,该链接仅显示包含safari cannot open the page because the address is invalid app protocol
错误的警告。
我希望此链接打开本机应用程序(如果它已安装在设备上)(正确发生),否则,如果应用程序未安装在设备上,我希望App Store打开,而不是用户可以安装该应用程序。
浏览StackOverflow我找到了2个问题的答案。一个是在链接上使用onclick
处理程序,延迟很小,通向App Store。不幸的是,使用iOS9和最新的Safari,这是行不通的。
我发现的另一个解决方案是使用onclick
处理程序显示<iframe>
display: none
,将用户重定向到App Store。第二种方法按预期工作但非常不一致,有时需要6-7秒才能重定向用户,导致可怕的用户体验。
我想要一种干净的方法,每次都能完美无缺地运作。谢谢。