【问题标题】:Detect standalone mode in Safari iOS在 Safari iOS 中检测独立模式
【发布时间】:2020-05-02 23:10:27
【问题描述】:

我的目标是向我们的网站添加 A2HS(添加到主屏幕)横幅,但如果用户积极参与 PWA,则显示它。我在互联网上看到很多人谈论window.navigator.standalone,但它根本不适合我。我已将其添加到我的 if 声明中:

if( isIos() && window.navigator.standalone ){
  //don't show Add To Home Screen banner
} else {
  //show Add To Home Screen banner
}

这不起作用是有道理的,因为当我在 Chrome 的控制台中键入 window.navigator.standalone 时,它说它是 undefined,因为它根本不存在。也就是说,有没有人有解决方案来检测用户是否在移动 Safari 上处于独立模式?提前致谢!

【问题讨论】:

    标签: javascript safari ios-standalone-mode


    【解决方案1】:

    在运行 iOS 13.3.1 的 iPhone XS 上测试后,standalone 似乎在两个地方可用:

    window.navigator.standalone
    window.clientInformation.standalone
    

    我刚刚在 iPhone 上查看了一个名为“airhorner”的 PWA,两个独立的 PWA 都设置为 true

    以下是 WebInspector 在独立模式下为“airhorner”PWA 显示的内容:

    这是 webInspector 为 iOS Safari 显示 google.com 的内容:

    【讨论】:

    • 我也是用模拟器复制的。以前我使用 Safari Technology Preview 浏览器,并将用户代理设置为 iOS iPhone,但这不起作用。现在让我弄清楚为什么我的横幅仍然单独出现。再次感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-17
    • 2017-11-14
    • 2019-09-28
    相关资源
    最近更新 更多