|
const CACHE_NAME = 'media-player-cache-v1'; |
|
|
|
const cachedFiles = [ |
|
'/index.html', |
|
'/index.html?mode=t', |
|
'/v.mp4', |
|
'/t/v.mp4', |
|
'/p.mp3', |
|
'/s.mp3', |
|
'/a.mp3', |
|
'/t.mp3', |
|
'/k.mp3', |
|
'/t/p.mp3', |
|
'/t/s.mp3', |
|
'/t/a.mp3', |
|
'/t/t.mp3', |
|
'/t/k.mp3' |
|
]; |
|
|
|
|
|
self.addEventListener('install', (event) => { |
|
self.skipWaiting(); |
|
event.waitUntil( |
|
caches.open(CACHE_NAME) |
|
.then(cache => { |
|
console.log('キャッシュを追加中:', cachedFiles); |
|
return cache.addAll(cachedFiles); |
|
}) |
|
.catch(error => { |
|
console.error('キャッシュ追加エラー:', error); |
|
}) |
|
); |
|
}); |
|
|
|
|
|
self.addEventListener('activate', (event) => { |
|
console.log('Service Worker アクティベート'); |
|
event.waitUntil(self.clients.claim()); |
|
}); |
|
|
|
|
|
self.addEventListener('fetch', (event) => { |
|
event.respondWith( |
|
caches.match(event.request) |
|
.then(response => { |
|
return response || fetch(event.request); |
|
}) |
|
); |
|
}); |
|
|