PWA应用无法在ios中正常运行,例如在android中,如果您下次将应用添加到主屏幕中,则它不允许您添加它,则会显示消息,例如该应用已安装在手机中,但在ios中允许添加n个时间,如果用户已经有应用程序,那么这是不好的,那么为什么他们会多次添加它。
有人可以帮我吗? 我们可以解决这个问题吗? 请提出类似的建议,这是ios在pwa中的限制!
const isIos = () => {
const userAgent = window.navigator.userAgent.toLowerCase();
return /iphone|ipad|ipod/.test(userAgent);
}
const isInStandaloneMode = () => ('standalone' in window.navigator) && (window.navigator.standalone);
if (isIos() && !isInStandaloneMode()) {
var deferredPrompt;
window.addEventListener('beforeinstallprompt', function (e) {
// Prevent Chrome 67 and earlier from automatically showing the prompt
e.preventDefault();
// Stash the event so it can be triggered later.
deferredPrompt = e;
var display = true;
setInterval(function () {
document.getElementById("balloonMessage").style.display = display ? "none" : "block";
display = !display;
}, 5000);
});
}
答案 0 :(得分:0)
尚未完全支持iOS中的PWA。它只能完成离线缓存,仅此而已。 Apple iOS的A2HS版本仍然是手动版本,大多数用户甚至不知道该功能存在。
如果要触发该A2HS横幅,则需要执行一个自定义JavaScript事件并弹出一个自定义A2HS HTML横幅,以“指导”用户如何在其主屏幕上添加该网站。
答案 1 :(得分:-1)
您可以为此使用BeforeInstallPrompt。并警告用户有关添加新的PWA。 BeforeInstallPrompt的标准包括以下内容: