检测 Web 应用程序是否在 Android 中被标记到主屏幕

wil*_*wen 3 javascript jquery android ios

我已经构建了一个响应式 Web 应用程序,它使用了一些简单的 HTML 和 jQuery。当应用程序加载到移动浏览器中时,modal()会调用一个引导函数,该函数会显示一条简单的“书签到您的主屏幕”消息。

对于 iOS,我可以通过以下代码段从主屏幕书签检查 Web 应用程序是否正在初始化:

  if(!window.navigator.standalone){
    $('#app-bookmarker').modal(); // popup the bookmark text
  }
Run Code Online (Sandbox Code Playgroud)

如果是这样,modal()则不会调用该函数,因此不会弹出窗口..

我正在努力寻找一种简单的方法来为 Android 实现相同的过程,有没有人做过类似的事情?目前的问题是,即使添加了书签,弹出窗口也会继续显示。

Gio*_*gio 5

您可以像这样检测网站是否已在 javascript 中添加到主屏幕:

if (window.matchMedia('(display-mode: standalone)').matches) {
  console.log("Thank you for installing our app!");
}
Run Code Online (Sandbox Code Playgroud)

有关官方 Google Developers 文档的更多信息:https : //developers.google.com/web/updates/2015/10/display-mode