我有一个网页,如果iPhone确实安装了应用程序,它将重定向到应用程序,但如果iPhone没有安装应用程序,我希望它在浏览器中呈现视图。我已实现的内容来自此{ {3}}
setTimeout(function () { window.location = "https://itunes.apple.com/appdir"; }, 25);
window.location = "appname://";
此方法在浏览器中呈现后,等待25毫秒才能打开本机应用程序...如果应用程序未打开,则在浏览器中呈现视图..
问题是它曾经在iOS 8中运行良好。但是在iOS 9上进行测试时,我会弹出这个
"在APP" 中打开此页。
因此用户无法点击popUp而应用程序也不会收到通知。几秒钟后弹出窗口消失并在浏览器中查看渲染..
如何处理此行为?
或者我还有其他想法吗?
答案 0 :(得分:1)
在iOS 9中,Apple将“Open App”模式从Javascript阻塞模式更改为非阻塞模式。当您尝试打开应用程序时,模式将不再阻止Javascript执行,这意味着回退重定向到App Store将立即执行,然后用户可以单击“打开应用程序”
Here很好地解读了Apple在其URI方案中所做的改变。该引用中也有一个解决方法。它应该对你有所帮助。