【问题标题】:DeepLink support for both iOS 8 and iOS 9对 iOS 8 和 iOS 9 的 DeepLink 支持
【发布时间】:2016-06-30 12:03:40
【问题描述】:

我有一个网页,如果 iPhone 确实安装了应用程序,它将重定向到应用程序,但如果 iPhone 没有安装应用程序,我希望它在浏览器中呈现视图。我已经实现的东西来自这个 @ 987654321@

setTimeout(function () { window.location = "https://itunes.apple.com/appdir"; }, 25);
window.location = "appname://";

此方法的作用是在浏览器中呈现后等待 25 毫秒打开本机应用程序...如果应用程序未打开则在浏览器中呈现视图..

问题是它曾经在 iOS 8 中运行良好。但是在 iOS 9 上测试时,我得到了这个弹出

“在APP中打开此页面”

因此用户无法点击弹出窗口并且应用程序不会收到通知。几秒钟后弹出窗口消失并在浏览器中呈现视图..

我该如何处理这种行为?

或者我还有什么其他的办法吗?

【问题讨论】:

    标签: ios swift web-applications ios9 deep-linking


    【解决方案1】:

    在 iOS 9 中,Apple 将“打开应用程序”模式从 Javascript 阻塞模式更改为非阻塞模式。当您尝试打开应用程序时,模态将不再阻止 Javascript 执行,这意味着到 App Store 的回退重定向将在用户单击“打开应用程序”之前立即执行

    Here 很好地了解了 Apple 在其 URI 方案中所做的更改。该参考文献中也有一种解决方法。它应该可以帮助你。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-12-20
      • 2015-10-14
      • 2017-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-17
      相关资源
      最近更新 更多