【问题标题】:Android Progressive Web App - Add to home screen appears even after installAndroid Progressive Web App - 添加到主屏幕即使在安装后也会出现
【发布时间】:2017-10-10 23:19:38
【问题描述】:
我们有一个渐进式 Web 应用程序,它通过“添加到主屏幕”横幅提示用户。
添加到主屏幕效果很好,但在用户从主屏幕启动页面后,有时仍会提示他们再次安装应用程序。我在这里发帖是因为我找到的所有资源都没有谈论这个问题或如何解决它。
TL;DR 从主屏幕启动应用程序仍会要求他们安装应用程序并显示“添加到主屏幕”提示。
【问题讨论】:
标签:
android
installation
homescreen
progressive-web-apps
【解决方案1】:
按照@Mr.Rebot 的建议,我开发了一小段代码来解决这个问题。
这是结果代码:
window.addEventListener("beforeinstallprompt", (ev) => {
if (isStandalone()) {
// PWA already installed.
event.preventDefault();
return false;
} else {
// PWA not installed.
}
});
function isStandalone() {
// Check if device supports service workers
if (!('serviceWorker' in window.navigator)) return false;
// Check for Android
if (window.matchMedia('(display-mode: standalone)').matches) return true;
// Check for iOS
if (window.navigator["standalone"] == true) return true;
return false;
}