尝试在Chrome最新浏览器的主屏幕中添加网络应用,它第一次正常访问但第二次无法正常工作,这意味着没有提示消息:
以下是我的代码:
创建了有效的清单json
在index.html中包含清单文件
并创建了service-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页面中注册服务工作者
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)
});
}
情景:
我第一次点击网页,显示添加屏幕提示
在主屏幕中添加
卸载主屏幕页
我尝试再次点击网页,它没有显示添加屏幕提示
答案 0 :(得分:2)
主屏幕上的图标只是Chrome浏览器的快捷方式,增加了风格(全屏,闪屏,方向等)。所以从技术上讲,你只是删除了快捷方式,而不是应用程序。
如果你点击烤肉串图标>信息图标>网站设置,您将能够看到Chrome仍然将其保存在设备中。真正卸载/删除它的唯一方法是点击Clear&重置按钮,这将使chrome认为该网站第一次被访问。
我认为"问题"这将是Chrome团队在浏览器中实现的一个很好的功能。通过"卸载" PWA也会清除并重置它。