این کل کدهای بنده هست
if ("serviceWorker" in navigator) {
navigator.serviceWorker.register("/pwa/serviceWorker.js")
.then(reg => {
alert("Service worker registred successfully" + reg);
})
.catch(err => {
alert("service worker not registred !!"+ err);
});
}
******
<link rel="manifest" href="/pwa/manifest.json" />
******
{
"name": "bazarefori1p",
"description": "bazarefori",
"short_name": "bazarefori",
"start_url": "/",
"display": "standalone",
"background_color": "#fff",
"theme_color": "#0078C1",
"gcm_sender_id": "103953800507",
"orientation": "portrait",
"prefer_related_applications": true,
"related_applications": [
{
"platform": "play",
"url": "https://play.google.com/store/apps/details?id=com.sheypoor.mobile",
"id": "com.sheypoor.mobile"
},
{
"platform": "itunes",
"url": "https://itunes.apple.com/us/app/shypwr-sheypoor/id877169218?mt=8"
}
],
"permissions": [
"gcm"
],
"version": 1.0,
"icons": [
{
"src": "/pwa/icons-192.png",
"type": "image/png",
"sizes": "48x48"
},
{
"src": "/pwa/icons-192.png",
"sizes": "128x128",
"type": "image/png",
"density": "2.0"
},
{
"src": "/pwa/icons-192.png",
"sizes": "192x192",
"type": "image/png",
"density": "4.0"
}
]
}
******
const staticCacheName = "site-static-v1";
const cacheAssets = [
"/"
];
self.addEventListener("install", evt => {
evt.waitUntil(
caches
.open(staticCacheName)
.then(cache => {
console.log("caching assets...");
cache.addAll(cacheAssets);
})
.catch(err => {})
);
});
self.addEventListener("fetch", evt => {
evt.respondWith(
caches
.match(evt.request)
.then(res => {
return res || fetch(evt.request);
})
.catch(err => {
if (evt.request.url.indexOf(".html") > -1) {
return caches.match("./");
}
})
);
});