Skip to content

Latest commit

ย 

History

History
53 lines (37 loc) ยท 1.48 KB

08.md

File metadata and controls

53 lines (37 loc) ยท 1.48 KB

PWA Push Web App

Vue ํ”Œ๋Ÿฌ๊ทธ์ธ ์žฅ์ 

// router/index.js
import Vue from "vue";
import VueRouter from "vue-router";

Vue.use(VueRouter);

Vue-router๋Š” ๊ณต์‹ ํ”Œ๋Ÿฌ๊ทธ์ธ์ด๋ผ ์œ„์™€ ๊ฐ™์€ ๋ฐฉ๋ฒ•์œผ๋กœ ์‚ฌ์šฉ ์„ ์–ธํ•œ๋‹ค.

// myplugin.js
export default {
    install() {
        console.log("ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ค์น˜");
        
    }
}
// main.js
import MyPlugin from './plugins/MyPlugin'

Vue.use(MyPlugin);

ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ์ดˆ๊ธฐ์— ์‹คํ–‰ํ•  ๋•Œ ํ•œ ๋ฒˆ๋งŒ ์‹คํ–‰๋˜๋ฏ€๋กœ, ์ฝ”๋“œ๊ฐ€ ์ค‘๋ณต๋˜์ง€ ์•Š๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.

main.js๊ฐ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์†์„ฑ์„ ํŒŒ์•…ํ•˜๊ธฐ ์‰ฝ๊ฒŒ ํ”Œ๋Ÿฌ๊ทธ์ธํ™” ์‹œํ‚ค๋ฉด ์ข‹๋‹ค.

Vue Composition API

๊ธฐ์กด Vue Instance์— setup ์†์„ฑ์ด ์ถ”๊ฐ€๋œ ๊ฒƒ์ด๋‹ค.

Firebase

Github api, facebok api๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ธ์ฆํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค firebase๋กœ ์ธ์ฆํ•˜๋Š” ๊ฒƒ์ด ๋”์šฑ ์‰ฝ๋‹ค.

Firebase ์ธ์ฆ

๋ชจ๋ฐ”์ผ push ์•Œ๋žŒ ๊ตฌ์กฐ

  • Android : GCM (Google Cloud Messaging) & FCM
  • iOS : APNS (Apple Push Notification Service) & FCM

Android google cloud messaging architecture

๋“ฑ๋ก์„ ํ•˜๊ณ  ๋‚˜์˜จ key๊ฐ’์„ database์— ์ €์žฅ

๊ทธ ํ›„์— GCM์ด ๊ฐ๊ฐ์˜ ๋‹จ๋ง๊ธฐ์— push๋ฅผ ์ด์ฃผ๋Š” ํ˜•ํƒœ์ด๋‹ค.

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋ฒ„ํ‚ค๋ฅผ ์•”๋ณตํ˜ธํ™” ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค. web push๋ผ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์žˆ์ง€๋งŒ https://web-push-codelab.glitch.me/ ์ด ์‚ฌ์ดํŠธ๋กœ ์ง„ํ–‰ํ•˜๋Š” ๊ฒƒ์ด ๋” ํŽธํ•˜๋‹ค.