JavaScript È°¿ëÆÁ
2016.10.13 / 18:11

Å©·Ò Ǫ½Ã ¾Ë¸² ¹è¿öº¸±â – 6. Ǫ½Ã ¾Ë¸² µî·ÏÇϱâ

û´ã°³¹ßÀÚ
Ãßõ ¼ö 311

Å©·Ò Ǫ½Ã ¾Ë¸² ¹è¿öº¸±â – 6. Ǫ½Ã ¾Ë¸² µî·ÏÇϱâ

¼ø¼­

  • 1. µî·Ï ÄÚµå Ãß°¡Çϱâ
  • 2. ·ÎÄÃÈ£½ºÆ®¿¡¼­ ½ÇÇàÇغ¸±â
  • 3. µî·Ï ID ã±â
  • 1. µî·Ï ÄÚµå Ãß°¡Çϱâ

    main.js ÆÄÀÏ¿¡¼­ //TODO ÄÚ¸àÆ®¸¦ ¾Æ·¡ ÄÚµå·Î ´ëüÇÕ´Ï´Ù.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    if ('serviceWorker' in navigator) {
        console.log('Service Worker is supported');
        navigator.serviceWorker.register('sw.js').then(function(reg) {
            console.log(':^)', reg);
            reg.pushManager.subscribe({
                userVisibleOnly: true
            }).then(function(sub) {
                console.log('endpoint:', sub.endpoint);
            });
        }).catch(function(error) {
            console.log(':^(', error);
        });
    }

    À§ÀÇ ÄÚµå´Â ServiceWorkerRegistration °´Ã¼ÀÇ pushManager¿¡°Ô ¸Þ½ÃÁö¸¦ º¸³¾ ¼ö ÀÖµµ·Ï ¸Þ´ÏÆ佺Ʈ¿¡ µî·ÏµÈ gcm_sender_id¸¦ È®ÀÎÇÕ´Ï´Ù.

    ¹Ýµå½Ã subscribe() ÇÔ¼ö¿¡ {userVisibleOnly: true} Àμö¸¦ Æ÷ÇÔ½ÃÄÑ¾ß ÇÕ´Ï´Ù. ÀÌ´Â ºê¶ó¿ìÀú¿¡°Ô ¸Þ½ÃÁö¸¦ ¹ÞÀ¸¸é ¾Ë¸²ÀÌ Ç×»ó º¸¿©Áö°Ô ÇÕ´Ï´Ù. ÇöÀç À̸¦ °¡¸®´Â°ÍÀº ºÒ¹ýÀÔ´Ï´Ù.

    2. ·ÎÄÃÈ£½ºÆ®¿¡¼­ ½ÇÇàÇغ¸±â

    ·ÎÄÃÈ£½ºÆ®¿¡¼­ Å©·Ò °³¹ßÀÚ ÅøÀ» ÀÌ¿ëÇÏ¿© index.htmlÀ» ½ÇÇàÇÕ´Ï´Ù.

    ±×·¯¸é ´ÙÀ½°ú °°Àº ¸Þ½ÃÁö¸¦ º¼ ¼ö ÀÖ½À´Ï´Ù.
    notification

    Áß¿ä: Å©·ÒÀº ÇöÀç À͸í¸ðµå¿¡¼­ Push API¸¦ Áö¿øÇÏÁö ¾Ê½À´Ï´Ù. Ǫ½Ã ¾Ë¸² ±ÇÇÑÀ» º¯°æÇϽ÷Á¸é URL ÁÂÃøÀÇ ¾ÆÀÌÄÜÀ» Ŭ¸¯ÇÏ½Ã¸é µË´Ï´Ù.
    pushsetting

    3. µî·Ï ID ã±â

    Å©·Ò °³¹ßÀÚ Åø¿¡¼­ endpoint °ªÀ» ¿ìŬ¸¯ÇÏ¿© Copy Link Address¸¦ º¹»çÇÕ´Ï´Ù.

    ÀÌ´Â ¾Æ·¡ Çü½Ä°ú °°½À´Ï´Ù.
    https://android.googleapis.com/gcm/send/fZZvTAi-Sbo:APA91bEKDUzeUBlZZWPl-8_7vO_st7TM5pYjVlxpreXsNtFY2yXu6R2iPDuqA4_6G9FwTHE7wqkcl-iJgnA3PIuQ96t5pn_o_H78Z7JP-0jrD4-Rr5ILLsplU08xOvSYVBxmYDkEkrN5

    URLÀÇ ¸¶Áö¸· ºÎºÐ(±½°Ô Ç¥ÇöµÈ ºÎºÐ), µî·Ï ID¸¦ È®ÀÎÇÕ´Ï´Ù.
    ÀÌ °ªÀº ³ªÁß¿¡ gcm¿¡¼­ ¾îµð·Î ¸Þ½ÃÁö¸¦ º¸³¾Áö È®ÀÎÇÒ¶§ »ç¿ëµË´Ï´Ù.
    subscriptionid