Skip to content

Commit 5fa6e09

Browse files
authored
Add files via upload
1 parent 8502807 commit 5fa6e09

File tree

3 files changed

+63
-0
lines changed

3 files changed

+63
-0
lines changed

index.html

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,17 @@
11
<!DOCTYPE html>
22
<html lang="ko">
33
<head>
4+
<link rel="manifest" href="/manifest.json">
5+
<meta name="theme-color" content="#000000">
6+
<script>
7+
if ("serviceWorker" in navigator) {
8+
window.addEventListener("load", () => {
9+
navigator.serviceWorker.register("/service-worker.js")
10+
.then((reg) => console.log("Service Worker registered!", reg))
11+
.catch((err) => console.log("Service Worker registration failed:", err));
12+
});
13+
}
14+
</script>
415
<meta charset="UTF-8">
516
<link rel="icon" href="/offrest.ico">
617
<meta name="viewport" content="width=device-width, initial-scale=1.0">

manifest.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"name": "My PWA App",
3+
"short_name": "PWA App",
4+
"start_url": "/",
5+
"display": "standalone",
6+
"background_color": "#ffffff",
7+
"theme_color": "#000000",
8+
"icons": [
9+
{
10+
"src": "/icon-192.png",
11+
"sizes": "192x192",
12+
"type": "image/png"
13+
},
14+
{
15+
"src": "/icon-512.png",
16+
"sizes": "512x512",
17+
"type": "image/png"
18+
}
19+
]
20+
}

service-worker.js

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
const CACHE_NAME = "pwa-cache-v1";
2+
const urlsToCache = ["/", "/index.html", "/manifest.json", "/icon-192.png", "/icon-512.png"];
3+
4+
self.addEventListener("install", (event) => {
5+
event.waitUntil(
6+
caches.open(CACHE_NAME).then((cache) => {
7+
return cache.addAll(urlsToCache);
8+
})
9+
);
10+
});
11+
12+
self.addEventListener("fetch", (event) => {
13+
event.respondWith(
14+
caches.match(event.request).then((response) => {
15+
return response || fetch(event.request);
16+
})
17+
);
18+
});
19+
20+
self.addEventListener("activate", (event) => {
21+
event.waitUntil(
22+
caches.keys().then((cacheNames) => {
23+
return Promise.all(
24+
cacheNames.map((cache) => {
25+
if (cache !== CACHE_NAME) {
26+
return caches.delete(cache);
27+
}
28+
})
29+
);
30+
})
31+
);
32+
});

0 commit comments

Comments
 (0)