从Android 8卸载PWA失败

时间:2019-09-18 00:22:31

标签: android progressive-web-apps

我已经开发了PWA-jcoonrod.github.io-卸载时-清除浏览器缓存-然后尝试转到该页面并重新安装它,我只看到旧版本-缓存似乎已失效PWA。如何在Android上完全删除PWA的缓存文件?

1 个答案:

答案 0 :(得分:0)

如果要清除服务工作者存储,可以通过使用的浏览器的开发工具或代码来完成:

// To unregister a service worker
navigator.serviceWorker.getRegistration()
   .then(function(registration) {
       if(registration){
          registration.unregister()
          .then(
               function(success) {
                 // if success = true, unregister was successful
                });
          }
    });

// To remove the SW storage
if ('caches' in window) {
    caches.keys()
      .then(function(keyList) {
          return Promise.all(keyList.map(function(key) {
              return caches.delete(key);
          }));
      })
}

caches.keys()方法返回CacheStorage的键,该接口代表服务工作者可以访问的Cache对象的存储。

我写了an article about Service Workers and caching strategies以及如何清除存储的数据,您可以看一下。