±âŸ(framework)
2018.03.21 / 01:54
Firebase Web äÆÃ¾Û ¸¸µé±â - Cloud Messaging°ú FunctionsÀ» ÀÌ¿ëÇÑ Çª½Ã¸Þ¼¼Áö ±â´É - FCM Token Á¤º¸
ÈÞ°í
Ãßõ ¼ö 198
¿äÁò À¥ºê¶ó¿ìÀú¿¡¼´Â ¾Èµå·ÎÀÌµå ¶Ç´Â IOS¿¡¼ º¼ ¼ö Àִ Ǫ½Ã ±â´ÉÀ» Áö¿øÇÏ´Â ºê¶ó¿ìÀú°¡ ÀÖ½À´Ï´Ù. ¿äÁò Youtube³ª FacebookÀ» ÀÌ¿ëÇϽðí, Chrome ¶Ç´Â Firefox ºê¶ó¿ìÀú¸¦ »ç¿ëÇÏ½Å´Ù¸é ¾Æ·¡¿Í °°Àº Ǫ½Ã¸¦ ¹Þ¾Æº¸¼ÌÀ» °ÍÀÔ´Ï´Ù.
ÀÌ´Â ¼ºñ½º ¿öÄ¿¶ó´Â ºê¶ó¿ìÀú¿¡¼ ¹é±×¶ó¿îµå·Î ½ÇÇàµÇ´Â ÀÚ¹Ù½ºÅ©¸³Æ® ±â¹ÝÀÇ ¿öÄ¿¸¦ ÅëÇؼ ¸Þ¼¼Áö¸¦ ¼ö½ÅÇÏ°í ³ëƼÇÇÄÉÀ̼ÇÀ» ±¸µ¿ÇÏ°Ô µË´Ï´Ù. ÀϹÝÀûÀÎ À¥ ¿öÄ¿´Â À¥¾Û ³»¿¡¼ ÀÚ¹Ù½ºÅ©¸³Æ®·Î ¸ÖƼ¾²·¹µå 󸮸¦ À§ÇØ »ç¿ëµË´Ï´Ù. ¼ºñ½º¿öÄ¿µµ ºñ½ÁÇÏÁö¸¸ Â÷ÀÌÁ¡ÀÌ ÀÖ½À´Ï´Ù. À¥¿öÄ¿´Â À¥¾ÛÀÌ ½ÇÇàµÇ´Â µ¿¾È¸¸ À¯ÁöµÇ°í ½ÇÇàµÇÁö¸¸ ¼ºñ½º¿öÄ¿ÀÇ °æ¿ì À¥¾ÛÀ» ¹þ¾î³ª´õ¶óµµ ºê¶ó¿ìÀú°¡ ½ÇÇàÀÌ µÇ¾î ÀÖÀ¸¸é Áö¼ÓÀûÀ¸·Î À̺¥Æ®¸¦ ¹Þ°í 󸮸¦ ¼öÇàÇÕ´Ï´Ù.
ÀÌ·¯ÇÑ ¼ºñ½º¿öÄ¿¸¦ Áö¿øÇÏ´Â ºê¶ó¿ìÀú´Â ÇöÀç Chrome, Firefox, Opera Á¤µµ¸¸ÀÌ Áö¿øÇÏ°í ÀÖ½À´Ï´Ù. ¸¶ÀÌÅ©·Î¼ÒÇÁÆ® Edgeºê¶ó¿ìÀú¿Í ¾ÖÇÃÀÇ Safariºê¶ó¿ìÀú´Â °³¹ß Áß¿¡ ÀÖ´Ù°í ÇÕ´Ï´Ù.
±×¸®°í Android³ª IOS µîÀÇ ¸ð¹ÙÀÏ Çª½Ã´Â ¸ð¹ÙÀÏÀÇ Àü¿øÀÌ ÄÑÁ®ÀÖ°í ÀÎÅͳÝÀÌ ¿¬°áµÇ¾î ÀÖ´Ù¸é ¾ðÁ¦µçÁö Ǫ½Ã¸¦ ¹ÞÀ» ¼ö ÀÖÁö¸¸ À¥ Ǫ½ÃÀÇ °æ¿ì ºê¶ó¿ìÀú°¡ ±¸µ¿µÇ¾î¾ßÁö¸¸ ¹ÞÀ» ¼ö ÀÖ´Â ´ÜÁ¡ÀÌ ÀÖ½À´Ï´Ù.
ÀÌ·¯ÇÑ Á¦¾à»çÇ×ÀÌ ÀÖÁö¸¸ Ǫ½Ã ±â´ÉÀº »ç¿ëÀÚ°¡ Á¢¼ÓÇϵµ·Ï À¯µµÇϴµ¥ ÁÁÀº µµ±¸°¡ µË´Ï´Ù. ±×·¡¼ À̹ø ¿¹Á¦¿¡¼´Â Á¢¼ÓÇÑ À¯Àú¿¡°Ô Àڲ٠Ǫ½Ã¸¦ º¸³»´Â °ÍÀº ½â ÁÁÀº ¹æ¹ýÀº ¾Æ´ÑµíÇؼ Á¢¼ÓÇÏÁö ¾ÊÀº À¯Àú¿¡°Ô¸¸ Ǫ½Ã¸¦ º¸³»µµ·Ï ±¸ÇöÀ» Çغ¸°Ú½À´Ï´Ù. ±×¸®°í Ǫ½Ã¸¦ ±¸ÇöÇÏ¸é¼ Å¬¶óÀ̾ðÆ® Äڵ忡¼ ¹Ù·Î Ǫ½Ã¸¦ º¸³¾¼öµµ ÀÖÀ¸³ª, À̴ Ǫ½Ã±â´É ±¸Çö¿¡ ÀÌ¿ëÇÏ´Â Firebase Cloud Messaging(ÀÌÇÏ FCM)ÀÇ ¼¹öÅ°¸¦ ³ëÃâ½ÃÄÑ¾ß ÇϹǷΠº¸¾È¿¡ À§ÇèÇÕ´Ï´Ù. ±×·¸±â ¶§¹®¿¡ Ǫ½Ã ¸Þ¼¼Áö¸¦ º¸³»´Â µ¿ÀÛÀº Ŭ¶óÀ̾ðÆ® Äڵ尡 ¾Æ´Ñ ¼¹öÄڵ带 »ç¿ëÇÏ°Ú½À´Ï´Ù. ¼¹ö´Â Firebase Functions ¸¦ ÀÌ¿ëÇÏ°Ô µË´Ï´Ù.
(1)¾Ë¸²(Notification) ±ÇÇÑ È¹µæ ¹× FCM Token Á¤º¸ ÀúÀå
FCM TokenÀ» ȹµæ Çغ¸°Ú½À´Ï´Ù. FCM TokenÀº Á¢¼ÓÇÏ°Ô µÇ´Â ȯ°æ(ºê¶ó¿ìÀú, ¸ð¹ÙÀϱâ±â)¿¡ µû¶ó Ǫ½Ã¸¦ ¹Þ°ÔµÉ ÀåÄ¡ÀÇ °³º°ÀûÀÎ ID °ªÀÔ´Ï´Ù.
À¥ÆäÀÌÁö°¡ ±¸µ¿µÇ¸é FCM TokenÀ» ȹµæÇÏ°í, ·Î±×ÀÎ ÈÄ¿¡ Realtime Database¿¡ ÀúÀåÇÏ°Ú½À´Ï´Ù.
¸ð¹ÙÀÏ(Android, IOS)¿¡¼´Â FCM ID¸¦ ȹµæÇϴµ¥ ÀÖ¾î¼ ±ÇÇÑÀ» ¿ä±¸ÇÏÁö ¾ÊÁö¸¸, Web¿¡¼´Â ¸ÕÀú ±ÇÇÑÀ» ¿ä±¸ ÇÕ´Ï´Ù. ¾Æ·¡´Â À¥ÆäÀÌÁö°¡ ±¸µ¿ÀÌ µÇ¸é¼ »ç¿ëÀÚ¿¡°Ô ±ÇÇÑÀ» ¿äûÇÏ°í, ±ÇÇÑ ¿äûÀ» ¼ö¶ôÇÏ°Ô µÇ¸é FCM TokenÁ¤º¸¸¦ ¹Þ°Ô µÇ´Â ÄÚµåÀÔ´Ï´Ù.
ºê¶ó¿ìÀú¸¦ ¶ç¿ö Á¢¼ÓÇغ¸¸é ¾Æ·¡ÀÇ ±×¸²°ú °°Àº ±ÇÇÑ ¿äûÀÌ ¶å´Ï´Ù. Çã¿ëÀ» ´©¸£°Ô µÇ¸é then¸Þ¼Òµå°¡ ½ÇÇàµÇ¸ç, FCM Token¹ß±ÞµÇ´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ°í, Â÷´ÜÀ» ´©¸£°ÔµÇ¸é catch¸Þ¼Òµå°¡ ½ÇÇàµÇ¸ç Äֿܼ¡ ¿¡·¯·Î±×°¡ ÂïÈ÷´Â °ÍÀ» È®ÀÎÇÒ ¼ö ÀÖ½À´Ï´Ù.
ÀÌÁ¦ ·Î±×ÀÎ ÈÄ Realtime Database¿¡ ÀúÀåÇÏ°Ú½À´Ï´Ù. ÀúÀåµÇ´Â À§Ä¡´Â 'FcmId/À¯ÀúUID' ¾Æ·¡¿¡ TokenÁ¤º¸°¡ ÀúÀåµË´Ï´Ù.
À¯Àúº° FCM TokenÁ¤º¸¸¦ Realtime Database¿¡ ÀúÀåÇÏ¿´½À´Ï´Ù.
éÅÍ ¿Ï¼º ¼Ò½º :
Ãâó: http://cionman.tistory.com/64 [Suwoni-Codelab]