第二次尝试在主屏幕中添加 Web 应用时提示不起作用
Prompt not working second time trying to add web app in Home Screen
尝试在 chrome 最新浏览器的主屏幕中添加网络应用程序,第一次访问正常但第二次无法正常工作,这意味着没有提示消息:
下面是我的代码:
创建了有效清单json
在 index.html 中包含清单文件
并创建了服务-worker.js
self.addEventListener('fetch', function(event) {
event.respondWith(
caches.match(event.request).then(function(response) {
if (response) {
return response;
}
return fetch(event.request).then(function(response) {
return response;
}).catch(function(error) {
throw error;
});
})
);
});
在 html 页面注册 service worker
if ('serviceWorker' in navigator) {
console.log("Will the service worker register?");
navigator.serviceWorker.register('service-worker.js')
.then(function(reg){
console.log("Yes, it did.");
}).catch(function(err) {
console.log("No it didn't. This happened: ", err)
});
}
场景:
第一次打开网页,显示添加屏幕提示
添加到主屏幕
卸载主屏幕页面
我尝试再次点击网页,没有显示添加屏幕提示
主屏幕上的图标只是 chrome 浏览器的快捷方式,添加了各种风格(全屏、闪屏、方向等)。所以从技术上讲,您只是删除了快捷方式而不是应用程序。
如果您点击烤肉串图标 > 信息图标 > 网站设置,您将能够看到 chrome 仍将其保存在设备中。真正 uninstall/delete 的唯一方法是单击“清除并重置”按钮,这会使 chrome 认为该站点是第一次访问。
我认为 "issue" 是 chrome 团队在浏览器中实现的一个很好的功能。通过 "uninstalling",PWA 也会清除并重置它。
尝试在 chrome 最新浏览器的主屏幕中添加网络应用程序,第一次访问正常但第二次无法正常工作,这意味着没有提示消息:
下面是我的代码:
创建了有效清单json
在 index.html 中包含清单文件
并创建了服务-worker.js
self.addEventListener('fetch', function(event) { event.respondWith( caches.match(event.request).then(function(response) { if (response) { return response; } return fetch(event.request).then(function(response) { return response; }).catch(function(error) { throw error; }); }) ); });
在 html 页面注册 service worker
if ('serviceWorker' in navigator) { console.log("Will the service worker register?"); navigator.serviceWorker.register('service-worker.js') .then(function(reg){ console.log("Yes, it did."); }).catch(function(err) { console.log("No it didn't. This happened: ", err) }); }
场景:
第一次打开网页,显示添加屏幕提示
添加到主屏幕
卸载主屏幕页面
我尝试再次点击网页,没有显示添加屏幕提示
主屏幕上的图标只是 chrome 浏览器的快捷方式,添加了各种风格(全屏、闪屏、方向等)。所以从技术上讲,您只是删除了快捷方式而不是应用程序。
如果您点击烤肉串图标 > 信息图标 > 网站设置,您将能够看到 chrome 仍将其保存在设备中。真正 uninstall/delete 的唯一方法是单击“清除并重置”按钮,这会使 chrome 认为该站点是第一次访问。
我认为 "issue" 是 chrome 团队在浏览器中实现的一个很好的功能。通过 "uninstalling",PWA 也会清除并重置它。