{"id":1132,"date":"2022-08-17T14:32:31","date_gmt":"2022-08-17T05:32:31","guid":{"rendered":"https:\/\/doc.msghub.uplus.co.kr\/guide\/?post_type=docs&#038;p=1132"},"modified":"2024-09-12T11:44:31","modified_gmt":"2024-09-12T02:44:31","slug":"android-%ea%b0%9c%eb%b0%9c%ea%b0%80%ec%9d%b4%eb%93%9c","status":"publish","type":"docs","link":"https:\/\/doc.msghub.uplus.co.kr\/guide\/d\/android-%ea%b0%9c%eb%b0%9c%ea%b0%80%ec%9d%b4%eb%93%9c\/","title":{"rendered":"Android \uac1c\ubc1c\uac00\uc774\ub4dc"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">\uac1c\uc694<\/h2>\n\n\n\n<p>Morpheus Push\ub294 \uc2a4\ub9c8\ud2b8\ud3f0 OS\uc5d0\uc11c \uc9c0\uc6d0\ud558\ub294 PNS(Push Notification Server)\ub97c \uae30\ubc18\uc73c\ub85c \ud55c \uba54\uc2dc\uc9c0 \uc804\uc1a1 \ud50c\ub7ab\ud3fc\uc774\ub2e4. Android Client \uc5d0\uc11c\ub294 UPMC WAS \uc5d0\uc11c \uc81c\uacf5\ud558\ub294 Push API \ub97c \uac01\uac01 \ubc84\uc804 \uaddc\uaca9\uc5d0 \ub9de\ucdb0 \uc5f0\ub3d9\ud558\uc5ec \uc6d0\ud65c\ud558\uac8c Push Service \ub97c \uc6b4\uc601\ud558\uae30 \uc704\ud55c \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \uc81c\uacf5\ud55c\ub2e4.<\/p>\n\n\n\n<p>Android \uac1c\ubc1c \uc0d8\ud50c\uc740<a href=\"https:\/\/total-msg-hub.github.io\/pushAndroid_sample\/\"> <\/a><a href=\"https:\/\/total-msg-hub.github.io\/push-android-sample\/\">https:\/\/total-msg-hub.github.io\/push-android-sample\/<\/a> \ub97c \ucc38\uc870\ud558\uc2dc\uae30 \ubc14\ub78d\ub2c8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\uc6a9\uc5b4<\/h2>\n\n\n\n<p><strong>FCM<\/strong><\/p>\n\n\n\n<ul>\n<li>Firebase Cloud Messaging \uc758 \uc904\uc784\ub9d0<\/li>\n\n\n\n<li>Firebase Cloud Messaging \uc740 \ubb34\ub8cc\ub85c \uba54\uc2dc\uc9c0\ub97c \uc548\uc815\uc801\uc73c\ub85c \uc804\uc1a1\ud560 \uc218 \uc788\ub294 \uad50\ucc28 \ud50c\ub7ab\ud3fc \uba54\uc2dc\uc9d5 \uc194\ub8e8\uc158<\/li>\n\n\n\n<li><a href=\"https:\/\/firebase.google.com\/docs\/cloud-messaging\/?hl=ko\"><u>https:\/\/firebase.google.com\/docs\/cloud-messaging\/?hl=ko<\/u><\/a><\/li>\n<\/ul>\n\n\n\n<p><strong>UPMC<\/strong><\/p>\n\n\n\n<ul>\n<li>Uracle Push Message Center \uc758 \uc904\uc784\ub9d0<\/li>\n\n\n\n<li>WAS(Web Application Server)\uc5d0 \ubc30\ud3ec\ub418\uba70, HTTP \ub610\ub294 XMPP \ud504\ub85c\ud1a0\ucf5c\uc744 \uc774\uc6a9\ud558\uc5ec Android FCM \uc11c\ubc84\uc640 Server \ub300 Server \ub85c \uc5f0\uacc4\ud558\uc5ec \uad6c\ub3d9\ud558\ub294 \uc11c\ubc84 \uc560\ud50c\ub9ac\ucf00\uc774\uc158<\/li>\n\n\n\n<li>Receiver \ub77c\uace0\ub3c4 \ubd88\ub9bc<\/li>\n<\/ul>\n\n\n\n<p><strong>Service <\/strong><strong>\ub4f1\ub85d<\/strong><\/p>\n\n\n\n<ul>\n<li>FCM\uc73c\ub85c\ubd80\ud130 Token \uc744 \ud560\ub2f9 \ubc1b\uace0, UPMC\ub85c Push \uc11c\ube44\uc2a4\ub97c \uc0ac\uc6a9\ud558\uaca0\ub2e4\uace0 \ub4f1\ub85d\ud558\ub294 \uc808\ucc28<\/li>\n<\/ul>\n\n\n\n<p><strong>Service <\/strong><strong>\ud574\uc81c<\/strong><\/p>\n\n\n\n<ul>\n<li>UPMC \ub85c Push \uc11c\ube44\uc2a4\ub97c \uc0ac\uc6a9\ud558\uc9c0 \uc54a\uaca0\ub2e4\uace0 \ub4f1\ub85d\uc744 \uc0ad\uc81c\ud558\ub294 \uc808\ucc28<\/li>\n<\/ul>\n\n\n\n<p><strong>User <\/strong><strong>\ub4f1\ub85d<\/strong><\/p>\n\n\n\n<ul>\n<li>UPMC \ub85c Push \uc11c\ube44\uc2a4\uc5d0 \ub300\ud55c \uc0ac\uc6a9\uc790\ub97c \ub4f1\ub85d \ub610\ub294 \ubcc0\uacbd\ud558\ub294 \uc808\ucc28<\/li>\n<\/ul>\n\n\n\n<p><strong>ServiceAndUser <\/strong><strong>\ub4f1\ub85d<\/strong><\/p>\n\n\n\n<ul>\n<li>UPMC \ub85c Push \uc11c\ube44\uc2a4 \ub4f1\ub85d \ubc0f \uc0ac\uc6a9\uc790\ub97c \ub4f1\ub85d\uc744 \ub3d9\uc2dc\uc5d0 \uc9c4\ud589\ud558\ub294 \uc808\ucc28<\/li>\n<\/ul>\n\n\n\n<p><strong>\uc218\uc2e0<\/strong><strong> <\/strong><strong>\ud655\uc778<\/strong><strong><\/strong><\/p>\n\n\n\n<ul>\n<li>\ud1b5\uacc4\ub97c \uc704\ud574 \uba54\uc2dc\uc9c0\ub97c \uc218\uc2e0 \ud6c4 <a href=\"https:\/\/clouddocs.morpheus.co.kr\/client\/sdk\/android.html#upmc\">UPMC<\/a> \ub85c ack\ub97c \uc8fc\ub294 \uc808\ucc28<\/li>\n<\/ul>\n\n\n\n<p><strong>\uc77d\uc74c<\/strong><strong> <\/strong><strong>\ud655\uc778<\/strong><strong><\/strong><\/p>\n\n\n\n<ul>\n<li>\ud1b5\uacc4\ub97c \uc704\ud574, \uc0ac\uc6a9\uc790\uac00 App\uc5d0\uc11c \uba54\uc2dc\uc9c0\ub97c \uc77d\uc5c8\uc744 \ub54c <a href=\"https:\/\/clouddocs.morpheus.co.kr\/client\/sdk\/android.html#upmc\">UPMC<\/a> \ub85c ack\ub97c \uc8fc\ub294 \uc808\ucc28<\/li>\n<\/ul>\n\n\n\n<p><strong>Project ID<\/strong><\/p>\n\n\n\n<ul>\n<li>Push \uc11c\ube44\uc2a4 \uc774\uc6a9\uc744 \uc704\ud574 Console\uc5d0\uc11c \ubc1c\uae09\ubc1b\uc740 ID<\/li>\n<\/ul>\n\n\n\n<p><strong>Client ID<\/strong><\/p>\n\n\n\n<ul>\n<li>\uc0ac\uc6a9\uc790\ub85c \ub4f1\ub85d \ud560 Client \uc758 \uace0\uc720\ud55c ID (CUID \ub77c\uace0\ub3c4 \ud568)<\/li>\n\n\n\n<li>\uc81c\uc57d\uc740 \uc5c6\uc73c\uba70, \uc77c\ubc18\uc801\uc73c\ub85c Email, User ID, Phone Number \ub610\ub294 Device-UUID \ub4f1\uc744 CUID \ub85c \uc0ac\uc6a9\ud568<\/li>\n<\/ul>\n\n\n\n<p><strong>Client Name<\/strong><\/p>\n\n\n\n<ul>\n<li>\uc0ac\uc6a9\uc790\ub85c \ub4f1\ub85d\ud560 Client \uc758 \uc774\ub984 (CNAME \ub77c\uace0\ub3c4 \ud568)<\/li>\n\n\n\n<li>\uc0ac\uc6a9\uc790\uc758 \uc774\ub984\uc774\ub098 Nickname \ub610\ub294 Device Name \uc744 CNAME \uc73c\ub85c \uc0ac\uc6a9<\/li>\n<\/ul>\n\n\n\n<p><strong>PSID<\/strong><\/p>\n\n\n\n<ul>\n<li>Push Service ID \uc758 \uc904\uc784\ub9d0<\/li>\n\n\n\n<li>Push \uc11c\ube44\uc2a4\uc5d0 \ub300\ud55c \uace0\uc720 ID<\/li>\n\n\n\n<li>FCM\uc5d0\uc11c \ud560\ub2f9 \ubc1b\uc740 Device Token\uc744 \uc0ac\uc6a9<\/li>\n<\/ul>\n\n\n\n<p><strong>Package Name<\/strong><\/p>\n\n\n\n<ul>\n<li>Google play\uc5d0\uc11c \uc548\ub4dc\ub85c\uc774\ub4dc \uc571\uc744 \uad6c\ubcc4\ud558\uae30 \uc704\ud55c unique \uac12\uc73c\ub85c, AndoridManifest.xml \uc5d0 \uc120\uc5b8\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Firebase Console \uc811\uc18d<\/h3>\n\n\n\n<p><a href=\"https:\/\/console.firebase.google.com\/\"><u>https:\/\/console.firebase.google.com\/<\/u><\/a> \uc744 \uc785\ub825\ud558\uac70\ub098, <a href=\"https:\/\/console.firebase.google.com\/\"><u>Go to Console<\/u><\/a> \uc744 \ud074\ub9ad\ud55c\ub2e4.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image.png\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"529\" data-id=\"1134\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1024x529.png\" alt=\"\" class=\"wp-image-1134\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1024x529.png 1024w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-300x155.png 300w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-768x397.png 768w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image.png 1075w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\ud504\ub85c\uc81d\ud2b8 \ucd94\uac00<\/h3>\n\n\n\n<p>\ud504\ub85c\uc81d\ud2b8 \ucd94\uac00 \uba54\ub274\ub97c \ud074\ub9ad\ud55c\ub2e4.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-3 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1.png\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"537\" data-id=\"1135\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1-1024x537.png\" alt=\"\" class=\"wp-image-1135\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1-1024x537.png 1024w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1-300x157.png 300w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1-768x403.png 768w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-1.png 1083w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\ud504\ub85c\uc81d\ud2b8 \uc774\ub984 \uc9c0\uc815<\/h3>\n\n\n\n<ul>\n<li>\uc0c8\ub85c\uc6b4 \ud504\ub85c\uc81d\ud2b8 \uc0dd\uc131\uc744 \ud558\ub824\uba74 1\ubc88 \ud504\ub85c\uc81d\ud2b8 \uc774\ub984 \uc785\ub825 \ubd80\ubd84\uc744 \ud074\ub9ad\ud558\uc5ec, \ud504\ub85c\uc81d\ud2b8 \uc774\ub984\uc744 \uc785\ub825\ud55c\ub2e4.  <\/li>\n\n\n\n<li>\uae30\uc874\uc5d0 \uad6c\uc131\ub41c \ud504\ub85c\uc81d\ud2b8\ub97c \uc774\uc6a9\ud558\ub824\uba74, 2\ubc88 \ub9ac\uc2a4\ud2b8\uc5d0 \ub098\ud0c0\ub098\ub294 \ud504\ub85c\uc81d\ud2b8\ub97c \uc120\ud0dd\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-5 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-2.png\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"542\" data-id=\"1136\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-2-1024x542.png\" alt=\"\" class=\"wp-image-1136\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-2-1024x542.png 1024w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-2-300x159.png 300w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-2-768x407.png 768w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-2.png 1078w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\ud504\ub85c\uc81d\ud2b8 \ub9cc\ub4e4\uae30<\/h3>\n\n\n\n<ul>\n<li>\ud504\ub85c\uc81d\ud2b8\uba85\uc744 \uc785\ub825\ud558\uace0, \uacc4\uc18d\uc744 \ud074\ub9ad\ud55c\ub2e4.<\/li>\n\n\n\n<li>\uc774\ubbf8\uc9c0\uc0c1 \ud504\ub85c\uc81d\ud2b8\uba85\uc740 \uc608\uc2dc\uc774\ubbc0\ub85c, \uc0ac\uc6a9\ud558\uace0\uc790 \ud558\ub294 \ud504\ub85c\uc81d\ud2b8\uba85\uc744 \uc785\ub825\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-7 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-3.png\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"544\" data-id=\"1137\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-3-1024x544.png\" alt=\"\" class=\"wp-image-1137\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-3-1024x544.png 1024w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-3-300x159.png 300w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-3-768x408.png 768w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-3.png 1084w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\uc720\uc758 \uc0ac\ud56d \ud655\uc778<\/h3>\n\n\n\n<ul>\n<li>Firebase\ub97c \ucd94\uac00\ud560 \ub54c \uc720\uc758\ud560 \uc0ac\ud56d\ub4e4\uc5d0 \ub300\ud574 \uac80\ud1a0\ud55c \ud6c4, \uacc4\uc18d\uc744 \ud074\ub9ad\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-9 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-39.png\"><img decoding=\"async\" loading=\"lazy\" width=\"693\" height=\"367\" data-id=\"1189\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-39.png\" alt=\"\" class=\"wp-image-1189\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-39.png 693w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-39-300x159.png 300w\" sizes=\"(max-width: 693px) 100vw, 693px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\uc560\ub110\ub9ac\ud2f1\uc2a4 \uc0ac\uc6a9 \uc5ec\ubd80<\/h3>\n\n\n\n<ul>\n<li>\uc560\ub110\ub9ac\ud2f1\uc2a4 \uc0ac\uc6a9\uc5ec\ubd80\uc5d0 \ub300\ud574 \uc124\uc815 \ud6c4, \uacc4\uc18d\uc744 \ud074\ub9ad\ud55c\ub2e4.<\/li>\n\n\n\n<li>\uc560\ub110\ub9ac\ud2f1\uc2a4\ub294 \ubb34\ub8cc\ub85c \uc774\uc6a9\ud560 \uc218 \uc788\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-11 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-40.png\"><img decoding=\"async\" loading=\"lazy\" width=\"693\" height=\"367\" data-id=\"1190\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-40.png\" alt=\"\" class=\"wp-image-1190\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-40.png 693w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-40-300x159.png 300w\" sizes=\"(max-width: 693px) 100vw, 693px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\uc560\ub110\ub9ac\ud2f1\uc2a4 \uad6c\uc131<\/h3>\n\n\n\n<ul>\n<li>3.6. \uc560\ub110\ub9ac\ud2f1\uc2a4 \uc0ac\uc6a9\uc744 \uc120\ud0dd\ud55c \uacbd\uc6b0 \ub098\ud0c0\ub098\ub294 \ud654\uba74\uc774\uba70, \uc560\ub110\ub9ac\ud2f1\uc2a4 \uacc4\uc815\uc744 \uc120\ud0dd\ud558\uac70\ub098 \ub9cc\ub4e0 \ud6c4, Firebase \ucd94\uac00\ub97c \ud074\ub9ad\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-13 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-41.png\"><img decoding=\"async\" loading=\"lazy\" width=\"682\" height=\"362\" data-id=\"1191\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-41.png\" alt=\"\" class=\"wp-image-1191\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-41.png 682w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-41-300x159.png 300w\" sizes=\"(max-width: 682px) 100vw, 682px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\ud504\ub85c\uc81d\ud2b8 \uc0dd\uc131 \uc911<\/h3>\n\n\n\n<ul>\n<li>3.7 \uc5d0\uc11c Firebase \ucd94\uac00 \uc2dc \ub098\ud0c0\ub098\ub294 \ud654\uba74\uc774\uba70, \u201c\uc0c8 \ud504\ub85c\uc81d\ud2b8\uac00 \uc900\ube44\ub418\uc5c8\uc2b5\ub2c8\ub2e4.\u201d \ub77c\ub294 \ubb38\uad6c\uac00 \ud45c\uc2dc\ub420 \ub54c\uae4c\uc9c0 \ub300\uae30\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-15 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-42.png\"><img decoding=\"async\" loading=\"lazy\" width=\"689\" height=\"387\" data-id=\"1192\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-42.png\" alt=\"\" class=\"wp-image-1192\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-42.png 689w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-42-300x169.png 300w\" sizes=\"(max-width: 689px) 100vw, 689px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\ud504\ub85c\uc81d\ud2b8 \uc0dd\uc131 \uc644\ub8cc<\/h3>\n\n\n\n<ul>\n<li>\ud504\ub85c\uc81d\ud2b8 \uc0dd\uc131 \uc644\ub8cc \ud654\uba74\uc774\uba70, \uacc4\uc18d\uc744 \ud074\ub9ad\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-17 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-43.png\"><img decoding=\"async\" loading=\"lazy\" width=\"695\" height=\"370\" data-id=\"1193\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-43.png\" alt=\"\" class=\"wp-image-1193\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-43.png 695w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-43-300x160.png 300w\" sizes=\"(max-width: 695px) 100vw, 695px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\uc571\uc5d0 Firebase \ucd94\uac00<\/h3>\n\n\n\n<ul>\n<li>\uc548\ub4dc\ub85c\uc774\ub4dc \uc571\uc5d0 FCM \uc744 \uc5f0\ub3d9\ud558\uae30 \uc704\ud574, \uc548\ub4dc\ub85c\uc774\ub4dc \uc544\uc774\ucf58\uc744 \ud074\ub9ad\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-19 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-44.png\"><img decoding=\"async\" loading=\"lazy\" width=\"693\" height=\"368\" data-id=\"1194\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-44.png\" alt=\"\" class=\"wp-image-1194\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-44.png 693w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-44-300x159.png 300w\" sizes=\"(max-width: 693px) 100vw, 693px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\uc571\uc5d0 Firebase \ucd94\uac00\ub97c \uc704\ud55c \uc815\ubcf4 \uc785\ub825<\/h3>\n\n\n\n<ul>\n<li>1\ubc88 \ud56d\ubaa9\uc5d0 \ud328\ud0a4\uc9c0 \uba85\uc744 \uc785\ub825\ud55c\ub2e4.<\/li>\n\n\n\n<li>\ud654\uba74\uc5d0 \ub098\ud0c0\ub098\ub294 \uc815\ubcf4\ub294 \uc608\uc2dc\uc774\uba70, \uc11c\ube44\uc2a4 \ud558\uace0\uc790 \ud558\ub294 \uc571\uc758 page name \uc744 \uc785\ub825\ud55c\ub2e4.<\/li>\n\n\n\n<li>2\ubc88 \ud56d\ubaa9\uc5d0 \uc571\uc5d0 \ub300\ud55c nick name \uc744 \uc785\ub825\ud55c\ub2e4.<\/li>\n\n\n\n<li>nick name \uc740 Firebase console \uc5d0\uc11c \uc11c\ube44\uc2a4 \uc911\uc778 \uc571\uc758 \uba85\uce6d\uc744 \uc27d\uac8c \ud655\uc778 \ud558\uae30 \uc704\ud55c \uc6a9\ub3c4\uc774\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-21 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-45.png\"><img decoding=\"async\" loading=\"lazy\" width=\"692\" height=\"370\" data-id=\"1195\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-45.png\" alt=\"\" class=\"wp-image-1195\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-45.png 692w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-45-300x160.png 300w\" sizes=\"(max-width: 692px) 100vw, 692px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">google-service.json \ub2e4\uc6b4\ub85c\ub4dc<\/h3>\n\n\n\n<ul>\n<li>\uc571 \ub4f1\ub85d\uc774 \uc644\ub8cc\ub418\uba74, google-service.json \ud30c\uc77c\uc774 \uc0dd\uc131\ub41c\ub2e4.<\/li>\n\n\n\n<li>google-service.json \ud30c\uc77c\uc740 FCM \uc5f0\ub3d9\uc2dc \ud544\uc694\ud558\ubbc0\ub85c, \ub2e4\uc6b4\ub85c\ub4dc \ubc1b\uc544 \uc800\uc7a5\ud574 \ub193\ub294\ub2e4.<\/li>\n\n\n\n<li>\ucc38\uace0\ub85c, google-service.json \ud30c\uc77c\uc740 \ub2e4\ub978 \ud654\uba74\uc5d0\uc11c\ub3c4 \ub2e4\uc6b4\ub85c\ub4dc\uac00 \uac00\ub2a5\ud558\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-23 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-46.png\"><img decoding=\"async\" loading=\"lazy\" width=\"697\" height=\"376\" data-id=\"1196\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-46.png\" alt=\"\" class=\"wp-image-1196\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-46.png 697w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-46-300x162.png 300w\" sizes=\"(max-width: 697px) 100vw, 697px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">build.gradle (\ud504\ub85c\uc81d\ud2b8 \uc218\uc900) SDK \uc124\uc815 \uc815\ubcf4<\/h3>\n\n\n\n<ul>\n<li>\ud504\ub85c\uc81d\ud2b8 \uc218\uc900\uc758 build.gradle \uc5d0 \ud3ec\ud568\ud574\uc57c \ud560 \uc815\ubcf4\ub85c, \ubcf5\uc0ac\ud558\uae30 \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \ubcf5\uc0ac\ud55c\ub2e4.<\/li>\n\n\n\n<li>\ucd94\ud6c4, \uc77c\uad04 \ucc98\ub9ac\ub97c \uc704\ud574, NotePad \uc640 \uac19\uc740 \ud504\ub85c\uadf8\ub7a8\uc744 \uc774\uc6a9\ud558\uc5ec, \ubcf5\uc0ac\ud55c \uc815\ubcf4\ub97c \uc800\uc7a5\ud574 \ub193\ub294\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-25 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-47.png\"><img decoding=\"async\" loading=\"lazy\" width=\"687\" height=\"355\" data-id=\"1197\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-47.png\" alt=\"\" class=\"wp-image-1197\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-47.png 687w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-47-300x155.png 300w\" sizes=\"(max-width: 687px) 100vw, 687px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">build.gradle (\uc571 \uc218\uc900) SDK \uc124\uc815 \uc815\ubcf4<\/h3>\n\n\n\n<ul>\n<li>\uc571 \ubaa8\ub4c8 \uc218\uc900\uc758 build.gradle \uc5d0 \ud3ec\ud568\ud574\uc57c \ud560 \uc815\ubcf4\ub85c, \ubcf5\uc0ac\ud558\uae30 \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uc5ec \ubcf5\uc0ac\ud55c\ub2e4.<\/li>\n\n\n\n<li>1, 2 \ubc88 \ubaa8\ub450 \ubcf5\uc0ac\ud558\uc5ec, \uc800\uc7a5\ud574 \ub193\ub294\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-27 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-48.png\"><img decoding=\"async\" loading=\"lazy\" width=\"685\" height=\"366\" data-id=\"1198\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-48.png\" alt=\"\" class=\"wp-image-1198\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-48.png 685w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-48-300x160.png 300w\" sizes=\"(max-width: 685px) 100vw, 685px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\uc571 \uc124\uce58 \ud655\uc778<\/h3>\n\n\n\n<ul>\n<li>\uc571\uc744 \uc2e4\ud589\ud558\uc5ec, \uc815\uc0c1\uc801\uc778 \uc801\uc6a9 \uc0c1\ud0dc\ub97c \ud655\uc778\ud558\ub294 \ud654\uba74\uc73c\ub85c, \uc571\uc774 \uad6c\uc131\ub418\uc9c0 \uc54a\uc558\uc73c\ubbc0\ub85c \uc774 \ub2e8\uacc4 \uac74\ub108\ub6f0\uae30\ub97c \ud074\ub9ad\ud558\uc5ec \ub2e4\uc74c \ud654\uba74\uc73c\ub85c \uc774\ub3d9\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-29 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-49.png\"><img decoding=\"async\" loading=\"lazy\" width=\"688\" height=\"368\" data-id=\"1199\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-49.png\" alt=\"\" class=\"wp-image-1199\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-49.png 688w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-49-300x160.png 300w\" sizes=\"(max-width: 688px) 100vw, 688px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\uc124\uc815 \uba54\ub274 \uc774\ub3d9<\/h3>\n\n\n\n<ul>\n<li>\uc124\uc815 \uc815\ubcf4\ub97c \ud655\uc778\ud558\uae30 \uc704\ud574, \uc571 (\uc548\ub4dc\ub85c\uc774\ub4dc \uc544\uc774\ucf58)\uc774\ub098 \ub354 \ubcf4\uae30 \uc544\uc774\ucf58 \ub4f1\uc744 \uc120\ud0dd\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-31 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-50.png\"><img decoding=\"async\" loading=\"lazy\" width=\"694\" height=\"370\" data-id=\"1201\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-50.png\" alt=\"\" class=\"wp-image-1201\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-50.png 694w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-50-300x160.png 300w\" sizes=\"(max-width: 694px) 100vw, 694px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\uc124\uc815 \uba54\ub274 \ud074\ub9ad<\/h3>\n\n\n\n<ul>\n<li>\uc124\uc815 \uc815\ubcf4\ub97c \ud655\uc778\ud558\uae30 \uc704\ud574, \uc124\uc815 \uc544\uc774\ucf58\uc744 \uc120\ud0dd\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-33 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-51.png\"><img decoding=\"async\" loading=\"lazy\" width=\"695\" height=\"370\" data-id=\"1203\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-51.png\" alt=\"\" class=\"wp-image-1203\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-51.png 695w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-51-300x160.png 300w\" sizes=\"(max-width: 695px) 100vw, 695px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\uc124\uc815 \ud654\uba74<\/h3>\n\n\n\n<ul>\n<li>Firebase Cloud Messaging API(V1) \uc0ac\uc6a9 \uc124\uc815\uc774 \ub418\uc5b4 \uc788\ub294\uc9c0 \ud655\uc778\ud558\uae30 \uc704\ud574 \ud074\ub77c\uc6b0\ub4dc \uba54\uc2dc\uc9d5 \ud0ed\uc744 \ud074\ub9ad\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-35 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"1323\" height=\"534\" data-id=\"3871\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image.png\" alt=\"\" class=\"wp-image-3871\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image.png 1323w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-300x121.png 300w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-1024x413.png 1024w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-768x310.png 768w\" sizes=\"(max-width: 1323px) 100vw, 1323px\" \/><\/figure>\n<\/figure>\n\n\n\n<ul>\n<li>\uc0ac\uc6a9 \uc911\uc9c0\ub428\uc77c \uacbd\uc6b0 <code>\ub354\ubcf4\uae30(\u22ee)<\/code>\u00a0\uba54\ub274\ub97c \ud1b5\ud574 API \ucf58\uc194\uc5d0 \uc811\uc18d\ud558\uc5ec\u00a0<code>\uc0ac\uc6a9<\/code>\uc73c\ub85c \uc0c1\ud0dc\ub97c \ubcc0\uacbd\ud55c\ub2e4<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"519\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-1-1024x519.png\" alt=\"\" class=\"wp-image-3873\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-1-1024x519.png 1024w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-1-300x152.png 300w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-1-768x389.png 768w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-1.png 1240w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>\ud504\ub85c\uc81d\ud2b8 \uc124\uc815 &gt; \uc11c\ube44\uc2a4 \uacc4\uc815\uc73c\ub85c \uc774\ub3d9\ud558\uc5ec \uc0c8 \ube44\uacf5\uac1c \ud0a4 \uc0dd\uc131<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" loading=\"lazy\" width=\"1024\" height=\"731\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-2-1024x731.png\" alt=\"\" class=\"wp-image-3874\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-2-1024x731.png 1024w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-2-300x214.png 300w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-2-768x549.png 768w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-2.png 1225w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>\uc815\uc0c1\uc801\uc73c\ub85c \ubc1c\uae09\uc774 \uc644\ub8cc\ub418\uc5c8\ub2e4\uba74 \uc544\ub798\uc640 \uac19\uc740 \ud615\uc2dd\uc758\u00a0<code>JSON<\/code>\u00a0\ud30c\uc77c\uc774 \ub2e4\uc6b4\ub85c\ub4dc \ub41c\ub2e4.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" loading=\"lazy\" width=\"785\" height=\"292\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-3.png\" alt=\"\" class=\"wp-image-3875\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-3.png 785w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-3-300x112.png 300w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2024\/09\/image-3-768x286.png 768w\" sizes=\"(max-width: 785px) 100vw, 785px\" \/><\/figure>\n\n\n\n<p>FCM HTTP v1 \ud504\ub85c\ud1a0\ucf5c \ubcc0\uacbd \uc0c1\uc138 \uac00\uc774\ub4dc \ubb38\uc11c : https:\/\/wiki.uracle.co.kr\/push\/server\/fcm\/httpv1-guide<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\uc548\ub4dc\ub85c\uc774\ub4dc \ud504\ub85c\uc81d\ud2b8 \uc0dd\uc131 \ub530\ub77c\ud558\uae30<\/h2>\n\n\n\n<p>\uc548\ub4dc\ub85c\uc774\ub4dc \ud504\ub85c\uc81d\ud2b8\ub97c \uc0dd\uc131\ud558\ub294 \uac00\uc774\ub4dc\ub85c, \u20184.1. \uc0dd\uc131 ~ 4.3. package name \/ \ud504\ub85c\uc81d\ud2b8\uba85 \uc785\ub825\u2019\uc73c\ub85c \uad6c\uc131\ub41c\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\uc0dd\uc131<\/h3>\n\n\n\n<ul>\n<li>Start a new Android Studio<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-37 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-55.png\"><img decoding=\"async\" loading=\"lazy\" width=\"592\" height=\"385\" data-id=\"1209\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-55.png\" alt=\"\" class=\"wp-image-1209\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-55.png 592w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-55-300x195.png 300w\" sizes=\"(max-width: 592px) 100vw, 592px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\ud15c\ud50c\ub9bf \uc120\ud0dd<\/h3>\n\n\n\n<ul>\n<li>\uc0ac\uc6a9\ud558\uace0\uc790 \ud558\ub294 \ud15c\ud50c\ub9bf\uc744 \uc120\ud0dd\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-39 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-56.png\"><img decoding=\"async\" loading=\"lazy\" width=\"622\" height=\"475\" data-id=\"1210\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-56.png\" alt=\"\" class=\"wp-image-1210\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-56.png 622w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-56-300x229.png 300w\" sizes=\"(max-width: 622px) 100vw, 622px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">package name \/ \ud504\ub85c\uc81d\ud2b8\uba85 \uc785\ub825<\/h3>\n\n\n\n<ul>\n<li>1\ubc88 : \ud504\ub85c\uc81d\ud2b8 \uba85\uc744 \uc785\ub825\ud55c\ub2e4.<\/li>\n\n\n\n<li>2\ubc88 : \uc0ac\uc6a9\ud558\uace0\uc790 \ud558\ub294 page name \uc785\ub825\ud55c\ub2e4. (domain \ud615\uc2dd, \uc18c\ubb38\uc790)<\/li>\n\n\n\n<li>3\ubc88 : \ud504\ub85c\uc81d\ud2b8 \uc800\uc7a5 \uc704\uce58\ub97c \uc9c0\uc815\ud55c\ub2e4.<\/li>\n\n\n\n<li>4\ubc88 : \ud504\ub85c\uc81d\ud2b8 \uc0dd\uc131\uc744 \uc644\ub8cc \ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-41 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-57.png\"><img decoding=\"async\" loading=\"lazy\" width=\"632\" height=\"483\" data-id=\"1211\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-57.png\" alt=\"\" class=\"wp-image-1211\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-57.png 632w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-57-300x229.png 300w\" sizes=\"(max-width: 632px) 100vw, 632px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">FCM \ub77c\uc774\ube0c\ub7ec\ub9ac \uc124\uc815 \ub530\ub77c\ud558\uae30<\/h2>\n\n\n\n<p>FCM \uc0ac\uc6a9\uc744 \uc704\ud55c \ub77c\uc774\ube0c\ub7ec\ub9ac \ubc0f gradle \ud658\uacbd\uc124\uc815\uc5d0 \ub300\ud55c \uac00\uc774\ub4dc\ub85c, \u20185.1. google-service.json \uc801\uc6a9 ~ 5.7. \ud504\ub85c\uc81d\ud2b8 \ub3d9\uae30\ud654 \uc0c1\ud0dc \ud655\uc778\u2019\uc73c\ub85c \uad6c\uc131\ub41c\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">google-sevice.json \uc801\uc6a9<\/h3>\n\n\n\n<ul>\n<li>Firebase console \uc744 \ud1b5\ud574, \ub2e4\uc6b4\ub85c\ub4dc \ubc1b\uc740 google-service.json \ud30c\uc77c\uc704\uce58\ub85c \uc774\ub3d9<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-43 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-58.png\"><img decoding=\"async\" loading=\"lazy\" width=\"696\" height=\"502\" data-id=\"1212\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-58.png\" alt=\"\" class=\"wp-image-1212\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-58.png 696w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-58-300x216.png 300w\" sizes=\"(max-width: 696px) 100vw, 696px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<ul>\n<li>\uc0dd\uc131\ud55c \uc548\ub4dc\ub85c\uc774\ub4dc \ud504\ub85c\uc81d\ud2b8\uc758 app module \uc5d0 google-service.json \ud30c\uc77c\uc744 \ubcf5\uc0ac<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">View \ub97c Project \ub85c \ubcc0\ud658<\/h3>\n\n\n\n<ul>\n<li>ProjectViews \uc5d0\uc11c Group Tab \uc744 \ud074\ub9ad\ud558\uc5ec, Project \uc120\ud0dd<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-45 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-59.png\"><img decoding=\"async\" loading=\"lazy\" width=\"683\" height=\"542\" data-id=\"1213\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-59.png\" alt=\"\" class=\"wp-image-1213\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-59.png 683w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-59-300x238.png 300w\" sizes=\"(max-width: 683px) 100vw, 683px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">google-service.json \uc801\uc6a9 \uc0c1\ud0dc \uccb4\ud06c<\/h3>\n\n\n\n<ul>\n<li>app module \ud558\uc704\uc5d0 google-service.json \ud30c\uc77c\uc774 \uc801\uc6a9\ub418\uc5b4 \uc788\ub294\uc9c0 \ud655\uc778<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-47 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-60.png\"><img decoding=\"async\" loading=\"lazy\" width=\"690\" height=\"587\" data-id=\"1214\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-60.png\" alt=\"\" class=\"wp-image-1214\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-60.png 690w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-60-300x255.png 300w\" sizes=\"(max-width: 690px) 100vw, 690px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\ud504\ub85c\uc81d\ud2b8 \ub2e8\uc704 build.gradle \uc801\uc6a9<\/h3>\n\n\n\n<ul>\n<li>1\ubc88 : \ud504\ub85c\uc81d\ud2b8 \ub2e8\uc704\uc758 build.gradle \ud30c\uc77c\uc744 \uc5f0\ub2e4.<\/li>\n\n\n\n<li>2\ubc88 : buildscript \uc5d0 dependencies \ubd80\ubd84\uc5d0, classpath \uc801\uc6a9<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>classpath 'com.google.gms:google-services:4.3.3'<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-49 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-61.png\"><img decoding=\"async\" loading=\"lazy\" width=\"695\" height=\"364\" data-id=\"1215\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-61.png\" alt=\"\" class=\"wp-image-1215\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-61.png 695w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-61-300x157.png 300w\" sizes=\"(max-width: 695px) 100vw, 695px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<ul>\n<li>Sample<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>buildscript {\n    repositories {\n        google()\n        jcenter()\n    }\n    dependencies {\n        classpath \"com.android.tools.build:gradle:4.0.1\"\n        classpath 'com.google.gms:google-services:4.3.3'\n        \/\/ NOTE: Do not place your application dependencies here; they belong\n        \/\/ in the individual module build.gradle files\n    }\n}\n\nallprojects {\n    repositories {\n        google()\n        jcenter()\n    }\n}\n\ntask clean(type: Delete) {\n    delete rootProject.buildDir\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">app module \ub2e8\uc704 build.gradle \uc801\uc6a9<\/h3>\n\n\n\n<ul>\n<li>1\ubc88 : app module \ub2e8\uc704\uc758 build.gradle \ud30c\uc77c\uc744 \uc5f0\ub2e4.<\/li>\n\n\n\n<li>2\ubc88 : dependencies\uc5d0 \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \uc801\uc6a9\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\/\/ Add the SDK for Firebase Cloud Messaging\nimplementation 'com.google.firebase:firebase-messaging:20.2.1'\n\nimplementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'\nimplementation 'com.google.code.gson:gson:2.8.5'\nimplementation 'com.firebase:firebase-jobdispatcher:0.8.5'<\/code><\/pre>\n\n\n\n<ul>\n<li>3\ubc88 : google-services plugin \uc801\uc6a9<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>apply plugin: 'com.google.gms.google-services'<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-51 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-62.png\"><img decoding=\"async\" loading=\"lazy\" width=\"698\" height=\"464\" data-id=\"1216\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-62.png\" alt=\"\" class=\"wp-image-1216\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-62.png 698w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-62-300x199.png 300w\" sizes=\"(max-width: 698px) 100vw, 698px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<ul>\n<li>Sample<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>apply plugin: 'com.android.application'\n\nandroid {\n    compileSdkVersion 29\n    buildToolsVersion \"29.0.3\"\n\n    defaultConfig {\n        applicationId \"com.push.cloud\"\n        minSdkVersion 16\n        targetSdkVersion 29\n        versionCode 1\n        versionName \"1.0\"\n\n        testInstrumentationRunner \"androidx.test.runner.AndroidJUnitRunner\"\n    }\n\n    buildTypes {\n        release {\n            minifyEnabled false\n            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'\n        }\n    }\n}\n\ndependencies {\n    implementation fileTree(dir: \"libs\", include: &#091;\"*.jar\"])\n    implementation 'androidx.appcompat:appcompat:1.1.0'\n    implementation 'com.google.android.material:material:1.0.0'\n    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'\n    implementation 'androidx.navigation:navigation-fragment:2.1.0'\n    implementation 'androidx.navigation:navigation-ui:2.1.0'\n\n\n    \/\/ Add the SDK for Firebase Cloud Messaging\n    implementation 'com.google.firebase:firebase-messaging:20.2.1'\n\n\n    \/\/\uc0d8\ud50c \ud504\ub85c\uc81d\ud2b8\ub97c \uc704\ud55c image loader libray\n    implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'\n    implementation 'com.google.code.gson:gson:2.8.5'\n    implementation 'com.firebase:firebase-jobdispatcher:0.8.5'\n\n    testImplementation 'junit:junit:4.12'\n    androidTestImplementation 'androidx.test.ext:junit:1.1.1'\n    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'\n\n}\n\napply plugin: 'com.google.gms.google-services'<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">gradle sync<\/h3>\n\n\n\n<ul>\n<li>build.gradle \ud30c\uc77c\uc744 \uc218\uc815\ud558\uba74, \ud56d\uc0c1 \ub3d9\uae30\ud654 \uc791\uc5c5\uc744 \uc9c4\ud589\ud574\uc57c \ud55c\ub2e4.<\/li>\n\n\n\n<li>1\ubc88 : \uba54\ub274\ubc14\uc5d0 \uc788\ub294 Sync Project With Gragle File \uc544\uc774\ucf58\uc744 \ud1b5\ud574 \ub3d9\uae30\ud654 \ud560 \uc218 \uc788\ub2e4.<\/li>\n\n\n\n<li>2\ubc88 : \ub610\ub294 gradle \ud30c\uc77c\uc774 \uc218\uc815\ub418\uba74 \ub098\ud0c0\ub098\ub294 \u2018Sync Now\u2019 \uae30\ub2a5\uc744 \ud1b5\ud574 \ub3d9\uae30\ud654 \ud560 \uc218 \uc788\ub2e4.<\/li>\n\n\n\n<li>1 \ub610\ub294 2\ubc88\uc744 \uc774\uc6a9\ud558\uc5ec, \ub3d9\uae30\ud654\ub97c \uc9c4\ud589\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-53 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-63.png\"><img decoding=\"async\" loading=\"lazy\" width=\"694\" height=\"483\" data-id=\"1217\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-63.png\" alt=\"\" class=\"wp-image-1217\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-63.png 694w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-63-300x209.png 300w\" sizes=\"(max-width: 694px) 100vw, 694px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\ud504\ub85c\uc81d\ud2b8 \ub3d9\uae30\ud654 \uc0c1\ud0dc \ud655\uc778<\/h3>\n\n\n\n<ul>\n<li>\uc544\ub798 3 \uac00\uc9c0 \uc815\ubcf4\uac00 \uc77c\uce58\ud574\uc57c, \uc14b\ud305\uc774 \uc815\uc0c1\uc801\uc73c\ub85c \ub41c \uac83\uc73c\ub85c \ud310\ub2e8\ud560 \uc218 \uc788\ub2e4.<\/li>\n\n\n\n<li>1\ubc88 : build.gradle \ud30c\uc77c \uc704\uce58 \uc810\uac80<\/li>\n\n\n\n<li>2\ubc88 : Run \u2018app\u2019 \ubc84\ud2bc\uc774 \ud65c\uc131\ud654<\/li>\n\n\n\n<li>3\ubc88 : Build console \uc5d0\uc11c, \u2018CONFIGURE SUCCESSFUL\u2019 \ubb38\uad6c \ud655\uc778<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-55 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-64.png\"><img decoding=\"async\" loading=\"lazy\" width=\"697\" height=\"358\" data-id=\"1218\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-64.png\" alt=\"\" class=\"wp-image-1218\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-64.png 697w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-64-300x154.png 300w\" sizes=\"(max-width: 697px) 100vw, 697px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">PUSH SDK \ubc0f Manifest.xml \uc124\uc815<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\ub77c\uc774\ube0c\ub7ec\ub9ac \uc801\uc6a9<\/h3>\n\n\n\n<ul>\n<li>app &gt; libs \ud3f4\ub354\uc5d0 \uc544\ub798 \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \uc801\uc6a9\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\uac00. morpheus_push_library_fcm_xxx.jar\n\ub098. mqtt-android-push_xxx.jar<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-57 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-65.png\"><img decoding=\"async\" loading=\"lazy\" width=\"694\" height=\"460\" data-id=\"1219\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-65.png\" alt=\"\" class=\"wp-image-1219\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-65.png 694w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-65-300x199.png 300w\" sizes=\"(max-width: 694px) 100vw, 694px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">assets \ud3f4\ub354 \ubc0f Manifest.xml \ud30c\uc77c \uc0dd\uc131<\/h3>\n\n\n\n<ul>\n<li>assets \ud3f4\ub354\ub97c \uc0dd\uc131\ud55c\ub2e4.<\/li>\n\n\n\n<li>assets \ud3f4\ub354\ub294 app &gt; src &gt; main &gt; assets \uc704\uce58\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-59 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-66.png\"><img decoding=\"async\" loading=\"lazy\" width=\"684\" height=\"507\" data-id=\"1220\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-66.png\" alt=\"\" class=\"wp-image-1220\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-66.png 684w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-66-300x222.png 300w\" sizes=\"(max-width: 684px) 100vw, 684px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<ul>\n<li>Manifest.xml \ud30c\uc77c\uc740 app &gt; src &gt; main &gt; assets &gt; res &gt; Manifest.xml \uc5d0 \uc704\uce58 \ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-61 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-67.png\"><img decoding=\"async\" loading=\"lazy\" width=\"690\" height=\"431\" data-id=\"1221\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-67.png\" alt=\"\" class=\"wp-image-1221\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-67.png 690w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-67-300x187.png 300w\" sizes=\"(max-width: 690px) 100vw, 690px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Manifest.xml \uc124\uc815<\/h3>\n\n\n\n<ul>\n<li>PUSH SDK\uc5d0\uc11c \uc0ac\uc6a9\ud558\uae30 \uc704\ud55c Manifest.xml\uc744 \uc0dd\uc131\ud55c\ub2e4. (AndroidManfiest.xml \uacfc\ub294 \ub2e4\ub978 \ud30c\uc77c\uc784)<\/li>\n\n\n\n<li>3.19. Sender ID \ud655\uc778 \uc744 \ud1b5\ud574, \ud68d\ub4dd\ud55c sender id \ud655\uc778\ud55c\ub2e4.<\/li>\n\n\n\n<li>PROJECT ID \ub97c \ud655\uc778\ud558\ub2e4.<\/li>\n\n\n\n<li>\uc801\uc6a9 \uc21c\uc11c<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\uac00. Cloud Console \uc5d0\uc11c \ubc1c\uae09\ubc1b\uc740  app id\ub97c &lt;app-id&gt; &lt;\/app-id&gt;\uc5d0 \uc785\ub825\n\ub098. \uc811\uc18d\ud560 \uc11c\ubc84 \uc815\ubcf4\ub97c &lt;server&gt; &lt;\/server&gt; \uc5d0 \uc785\ub825\n\ub2e4. Firebase Console \uc5d0\uc11c \ud68d\ub4dd\ud55c \ubc1c\uc2e0\uc790 id (sender id) \ub97c &lt;fcm-sender-id&gt; &lt;\/fcm-sender-id&gt; \uc5d0 \uc785\ub825\ud55c\ub2e4.\n\ub77c. log \uc640 file log \ub294 \ud544\uc694\uc2dc \uc218\uc815\ud55c\ub2e4.<\/code><\/pre>\n\n\n\n<ul>\n<li>Manifest.xml \uc608\uc2dc<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n&lt;settings&gt;\n        &lt;push&gt;\n                &lt;receiver&gt;\n\n                        &lt;app-id&gt;123456589&lt;\/app-id&gt;\n                        &lt;log&gt;y&lt;\/log&gt;\n                        &lt;file-loy&gt;y&lt;\/file-loy&gt;\n\n                        &lt;!-- UPMC \uc11c\ubc84 \ubc84\uc804 5.0--&gt;\n                        &lt;version&gt;5.0&lt;\/version&gt;\n\n                        &lt;!--UPMC \uc11c\ubc84 URL : \uc544\ub798 \ub3c4\uba54\uc778 \uc815\ubcf4 fixed --&gt;\n                        &lt;server&gt;https:\/\/upmc.msghub.uplus.co.kr\/upmc&lt;\/server&gt;\n\n                        &lt;!-- \ud0c0\uc784\uc544\uc6c3 \uc2dc\uac04 --&gt;\n                        &lt;timeout&gt;20000&lt;\/timeout&gt;\n\n                        &lt;!-- firebase console \uc5d0\uc11c \ud68d\ub4dd\ud55c \ubc1c\uc2e0\uc790 id --&gt;\n\n                        &lt;fcm-sender-id&gt;123456789101&lt;\/fcm-sender-id&gt;\n\n                        &lt;!-- fixed --&gt;\n                        &lt;android-push-type&gt;FCM&lt;\/android-push-type&gt;\n\n                        &lt;!-- \ube0c\ub85c\ub4dc\uce90\uc2a4\ud2b8 \ub9ac\uc2dc\ubc84\uc5d0\uc11c \ud37c\ubbf8\uc158 \uc0ac\uc6a9 \uc5ec\ubd80\ub97c \uc124\uc815 (Y) : fixed  --&gt;\n                        &lt;use-permission&gt;Y&lt;\/use-permission&gt;\n                &lt;\/receiver&gt;\n        &lt;\/push&gt;\n&lt;\/settings&gt;<\/code><\/pre>\n\n\n\n<blockquote class=\"wp-block-quote\">\n<p><strong>app-id \ub294MsgHub Console \uc5d0\uc11c \ubc1c\uae09\ubc1b\uc740 PROJECT ID \ub97c \ud1b5\ud574, \ud655\uc778 \ud560 \uc218 \uc788\ub2e4.<\/strong><\/p>\n<cite><strong>file log\ub97c \ud65c\uc131\ud654 \ud558\ub294 \uacbd\uc6b0 \ud30c\uc77c \uc704\uce58 : \uba54\uc778\uc800\uc7a5\uc18c &gt; Android &gt; data &gt; [page name] &gt; log &gt; pushlog.log<\/strong><\/cite><\/blockquote>\n\n\n\n<ul>\n<li>settings.push.receiver \uc5d0 \ub300\ud55c \uc124\uc815\uac12<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Key<\/strong><\/td><td><strong>Type<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><tr><td>app-id<\/td><td>String<\/td><td>MsgHub console\uc5d0\uc11c \uc0dd\uc131\ud55c \uc571 \uc2dd\ubcc4\uc790<\/td><\/tr><tr><td>log<\/td><td>String<\/td><td>Push Service \uc5d0 \ub300\ud55c Debugging \ub85c\uadf8 \ucd9c\ub825 \uc5ec\ubd80 ( y \/ n )<\/td><\/tr><tr><td>file-log<\/td><td>String<\/td><td>\ud30c\uc77c\ub85c \ub85c\uadf8 \ucd9c\ub825 \uc5ec\ubd80 ( y \/ n )<\/td><\/tr><tr><td>version<\/td><td>String<\/td><td>UPMC Version (5.0 &#8211; \uace0\uc815 \uac12)<\/td><\/tr><tr><td>server<\/td><td>String<\/td><td>UPMC WAS \uc11c\ubc84 URL (\uace0\uc7a5 \uac12)<\/td><\/tr><tr><td>fcm-sender-id<\/td><td>String<\/td><td>Firebase console\uc5d0\uc11c \ud68d\ub4dd\ud55c \ubc1c\uc1a1\uc790 id<\/td><\/tr><tr><td>android-push-type<\/td><td>String<\/td><td>FCM (\uace0\uc815 \uac12)<\/td><\/tr><tr><td>use-permission<\/td><td>String<\/td><td>Broadcast \ud37c\ubbf8\uc158 \uc0ac\uc6a9 \uc5ec\uc8fc (Y &#8211; \uace0\uc815 \uac12. \ud544\uc218)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">receiver package \uc0dd\uc131<\/h3>\n\n\n\n<ul>\n<li>\ud478\uc2dc \uc218\uc2e0\uc744 \uc704\ud55c receiver \uc6a9 package\ub97c \uc0dd\uc131\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-63 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-68.png\"><img decoding=\"async\" loading=\"lazy\" width=\"694\" height=\"449\" data-id=\"1224\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-68.png\" alt=\"\" class=\"wp-image-1224\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-68.png 694w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-68-300x194.png 300w\" sizes=\"(max-width: 694px) 100vw, 694px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\"><a href=\"http:\/\/MessageArrivedReceiver.java\">MessageArrivedReceiver.java<\/a> class \uc0dd\uc131<\/h3>\n\n\n\n<ul>\n<li>\ud478\uc2dc\ub97c \ubc1b\uc744 MessageArrivedReceiver class\ub97c \uc0dd\uc131\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-65 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-69.png\"><img decoding=\"async\" loading=\"lazy\" width=\"689\" height=\"414\" data-id=\"1225\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-69.png\" alt=\"\" class=\"wp-image-1225\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-69.png 689w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-69-300x180.png 300w\" sizes=\"(max-width: 689px) 100vw, 689px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-67 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-70.png\"><img decoding=\"async\" loading=\"lazy\" width=\"694\" height=\"467\" data-id=\"1226\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-70.png\" alt=\"\" class=\"wp-image-1226\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-70.png 694w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-70-300x202.png 300w\" sizes=\"(max-width: 694px) 100vw, 694px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<ul>\n<li>MessageArrivedReceiver \ub294 BroadcastReceiver\ub97c \uc0c1\uc18d\ubc1b\uc544 \uc0dd\uc131\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-69 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-71.png\"><img decoding=\"async\" loading=\"lazy\" width=\"695\" height=\"478\" data-id=\"1227\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-71.png\" alt=\"\" class=\"wp-image-1227\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-71.png 695w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-71-300x206.png 300w\" sizes=\"(max-width: 695px) 100vw, 695px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<ul>\n<li>MessageArrivedReceiver \uc608\uc2dc<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>import android.content.BroadcastReceiver;\nimport android.content.Context;\nimport android.content.Intent;\nimport com.uracle.push.test.helper.PushNotifyHelper;\nimport org.json.JSONObject;\nimport m.client.push.library.common.Logger;\nimport m.client.push.library.common.PushConstants;\n\npublic class MessageArrivedReceiver extends BroadcastReceiver {\n\n        @Override\n        public void onReceive(Context context, Intent intent) {\n                if (intent.getAction().equals(context.getPackageName() + PushConstants.ACTION_GCM_MESSAGE_ARRIVED)) {\n                        try {\n\n                                \/\/ \uc218\uc2e0\ub41c payload data \ub294 \uc544\ub798 3\uac00\uc9c0 \ubc29\uc2dd\uc73c\ub85c \ud68d\ub4dd \ud560 \uc218 \uc788\ub2e4.\n                                String data = intent.getExtras().getString(PushConstants.KEY_JSON);\n                                String rawData = intent.getExtras().getString(PushConstants.KEY_ORIGINAL_PAYLOAD_STRING);\n                                byte&#091;] rawDataBytes = intent.getExtras().getByteArray(PushConstants.KEY_ORIGINAL_PAYLOAD_BYTES);\n\n                                Logger.i(new JSONObject(data).toString(2));\n                                Logger.i(\"received raw data : \" + rawData);\n                                Logger.i(\"received bytes data : \" + new String(rawDataBytes, \"utf-8\"));\n                                \/\/ \ub178\ud2f0\ud53c\ucf00\uc774\uc158 \uc0dd\uc131\n                                PushNotifyHelper.showNotification(context, new JSONObject(data));\n\n                        } catch (Exception e) {\n                                e.printStackTrace();\n                        }\n                }\n        }\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">AndroidManifest.xml \uc124\uc815<\/h3>\n\n\n\n<ul>\n<li>\ud478\uc2dc\ub97c \uc704\ud55c \uc11c\ube44\uc2a4 \ub4f1\ub85d \ubc0f \uba54\uc2dc\uc9c0 \uc218\uc2e0\uc744 \uc704\ud55c \uc124\uc815\uc744 \ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>\uac00. service \ub4f1\ub85d : FCMIntentService\n\ub098. receiver \ub4f1\ub85d : MessageArrivedReceiver, FcmActionReceiver\n\ub2e4. permission \ub4f1\ub85d : ${applicationId}.permission.MPUSH_PERMISSION\n\ub77c. uses-permission \ub4f1\ub85d : ${applicationId}.permission.MPUSH_PERMISSION, android.permission.WAKE_LOCK<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-71 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-72.png\"><img decoding=\"async\" loading=\"lazy\" width=\"698\" height=\"487\" data-id=\"1228\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-72.png\" alt=\"\" class=\"wp-image-1228\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-72.png 698w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-72-300x209.png 300w\" sizes=\"(max-width: 698px) 100vw, 698px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<ul>\n<li>AndroidManifest.xml \uc608\uc2dc<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;\n&lt;manifest xmlns:android=\"http:\/\/schemas.android.com\/apk\/res\/android\"\n          xmlns:tools=\"http:\/\/schemas.android.com\/tools\"\n          package=\"com.push.cloud\"&gt;\n\n        &lt;application\n                android:requestLegacyExternalStorage=\"true\"\n                android:allowBackup=\"false\"\n                android:icon=\"@mipmap\/ic_launcher\"\n                android:label=\"@string\/app_name\"\n                android:roundIcon=\"@mipmap\/ic_launcher_round\"\n                android:supportsRtl=\"true\"\n                android:theme=\"@style\/AppTheme\"\n                android:usesCleartextTraffic=\"true\"&gt;\n                &lt;activity\n                        android:name=\".MainActivity\"\n                        android:label=\"@string\/app_name\"\n                        android:theme=\"@style\/AppTheme.NoActionBar\"&gt;\n                        &lt;intent-filter&gt;\n                                &lt;action android:name=\"android.intent.action.MAIN\" \/&gt;\n                                &lt;category android:name=\"android.intent.category.LAUNCHER\" \/&gt;\n                        &lt;\/intent-filter&gt;\n                &lt;\/activity&gt;\n\n                &lt;!-- =================== PUSH SERVICE SETTINGS START============= --&gt;\n                &lt;!-- FirebaseMessagingService \ub97c \uc0c1\uc18d\ubc1b\uc544 \uad6c\ud604 \ub428 --&gt;\n                &lt;service\n                        android:name=\"m.client.push.library.service.FCMIntentService\"\n                        android:exported=\"false\"\n                        tools:ignore=\"Instantiatable\"&gt;\n                        &lt;intent-filter&gt;\n                                &lt;action android:name=\"com.google.firebase.MESSAGING_EVENT\" \/&gt;\n                        &lt;\/intent-filter&gt;\n                &lt;\/service&gt;\n\n                &lt;!-- \ud478\uc2dc payload data \uc218\uc2e0 class --&gt;\n                &lt;receiver android:name=\".receiver.MessageArrivedReceiver\"&gt;\n                        &lt;intent-filter&gt;\n                                &lt;action android:name=\"${applicationId}.GCM_MESSAGE_ARRIVED\" \/&gt;\n                        &lt;\/intent-filter&gt;\n                &lt;\/receiver&gt;\n\n                &lt;!-- UPMC \uc11c\ube44\uc2a4 \ub4f1\ub85d \/ \ud574\uc81c \ub4f1\uc744 \uc704\ud55c class  --&gt;\n                &lt;receiver android:name=\"m.client.push.library.receiver.FcmActionReceiver\"&gt;\n                        &lt;intent-filter&gt;\n                                &lt;action android:name=\"${applicationId}.ACTION_GCM\" \/&gt;\n                        &lt;\/intent-filter&gt;\n                &lt;\/receiver&gt;\n        &lt;\/application&gt;\n\n        &lt;!-- \ud478\uc2dc BroadCast \uc218\uc2e0 \uad8c\ud55c \uc6a9 Permission --&gt;\n        &lt;permission\n                android:name=\"${applicationId}.permission.MPUSH_PERMISSION\"\n                android:protectionLevel=\"signature\" \/&gt;\n        &lt;uses-permission android:name=\"${applicationId}.permission.MPUSH_PERMISSION\" \/&gt;\n\n        &lt;!-- \ud478\uc2dc \uc218\uc2e0 \ud6c4, screen on \uc744 \uc704\ud55c permission--&gt;\n        &lt;uses-permission android:name=\"android.permission.WAKE_LOCK\" \/&gt;\n        &lt;uses-permission android:name=\"android.permission.INTERNET\"\/&gt;\n        &lt;uses-permission android:name=\"android.permission.VIBRATE\"\/&gt;\n        &lt;uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\" \/&gt;\n        &lt;!-- =================== PUSH SERVICE SETTINGS END ============= --&gt;\n\n&lt;\/manifest&gt;<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\ube4c\ub4dc<\/h3>\n\n\n\n<ul>\n<li><a href=\"https:\/\/developer.android.com\/studio\/debug\/dev-options?hl=ko\">\ub514\ubc14\uc774\uc2a4 \uac1c\ubc1c\uc790 \uc635\uc158 \ud65c\uc131\ud654<\/a> \ub97c \uc9c4\ud589\ud55c\ub2e4.<\/li>\n\n\n\n<li>PC\uc640 \ub514\ubc14\uc774\uc2a4\ub97c USB\ub85c \uc5f0\uacb0\ud55c\ub2e4.<\/li>\n\n\n\n<li>\ube4c\ub4dc\ud560 \ub514\ubc14\uc774\uc2a4\ub97c \uc120\ud0dd\ud558\uace0, \ud65c\uc131\ud654\ub41c Run \ubc84\ud2bc\uc744 \uc774\uc6a9\ud558\uc5ec, Build \ub97c \uc2e4\ud589\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-73 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-73.png\"><img decoding=\"async\" loading=\"lazy\" width=\"696\" height=\"402\" data-id=\"1229\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-73.png\" alt=\"\" class=\"wp-image-1229\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-73.png 696w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-73-300x173.png 300w\" sizes=\"(max-width: 696px) 100vw, 696px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">\ub85c\uadf8 \ubcf4\uae30<\/h3>\n\n\n\n<ul>\n<li>Android Studio \ud558\ub2e8\uc5d0 Logcat \ud0ed\uc744 \uc120\ud0dd\ud55c\ub2e4.<\/li>\n\n\n\n<li>Manifest.xml \uc758 log \ub97c y\ub85c \uc124\uc815\ud55c\ub2e4.<\/li>\n\n\n\n<li>\ube4c\ub4dc\ub97c \ud1b5\ud574, \uc571\uc744 \uc2e4\ud589\ud55c\ub2e4.<\/li>\n\n\n\n<li>1\ubc88 : \ub85c\uadf8\ub97c \ubcf4\uace0\uc790 \ud558\ub294 Device, package name \uc744 \uc120\ud0dd\ud558\uace0, log level \uc744 \uc124\uc815\ud55c\ub2e4.<\/li>\n\n\n\n<li>2\ubc88 : Show only selected applicatoin \uc744 \uc120\ud0dd\ud558\uba74, \uc120\ud0dd\ud55c package name \uc5d0 \ud574\ub2f9\ud558\ub294 \uc571\uc758 \ub85c\uadf8\ub9cc \ubcfc \uc218 \uc788\ub2e4.<\/li>\n\n\n\n<li>3\ubc88 : \ub514\ubc14\uc774\uc2a4\uc5d0\uc11c \ucd9c\ub825\ud558\ub294 \ub85c\uadf8\ub97c \ud655\uc778 \ud560 \uc218 \uc788\ub2e4.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-75 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-74.png\"><img decoding=\"async\" loading=\"lazy\" width=\"690\" height=\"481\" data-id=\"1230\" src=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-74.png\" alt=\"\" class=\"wp-image-1230\" srcset=\"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-74.png 690w, https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-content\/uploads\/sites\/2\/2022\/08\/image-74-300x209.png 300w\" sizes=\"(max-width: 690px) 100vw, 690px\" \/><\/a><\/figure>\n<\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">API \uc801\uc6a9<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\uac1c\uc694<\/h3>\n\n\n\n<p>\uc571\uc5d0\uc11c \ud478\uc2dc \uba54\uc2dc\uc9c0\ub97c \uc218\uc2e0\ud558\uae30 \uc704\ud574\uc11c\ub294 \uba3c\uc800 \uc571\uc5d0\uc11c \ud478\uc2dc\ub97c \uc218\uc2e0\ud55c \uc0ac\uc6a9\uc790 \uc815\ubcf4\ub97c \ub4f1\ub85d\ud574\uc57c \ud55c\ub2e4. \uc774\ub807\uac8c \ud478\uc2dc \uc0ac\uc6a9\uc790\ub85c \ub4f1\ub85d\ub418\uba74 \ud478\uc2dc \uba54\uc2dc\uc9c0 \uc218\uc2e0\uc774 \uac00\ub2a5\ud558\uba70, \uc571\uc5d0\uc11c\ub294 \uc218\uc2e0\ub41c \uba54\uc2dc\uc9c0\uac00 \uc801\uc808\ud558\uac8c \ucc98\ub9ac\ub420 \uc218 \uc788\ub3c4\ub85d \uad6c\ud604 \uc791\uc5c5\uc774 \ud544\uc694\ud558\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Push APIs<\/h3>\n\n\n\n<ul>\n<li><strong><em>Register Service and User<\/em><\/strong><\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code has-pale-cyan-blue-background-color has-background\"><code>PushManager.getInstance().registerServiceAndUser(Context context, String cuid, String cname);<\/code><\/pre>\n\n\n\n<ul>\n<li><a href=\"https:\/\/docs.morpheus.co.kr\/client\/push\/fcm.html\">Client ID<\/a> \uc640 <a href=\"https:\/\/docs.morpheus.co.kr\/client\/push\/fcm.html\">Client Name<\/a> \uc73c\ub85c User \ub4f1\ub85d<\/li>\n\n\n\n<li>\uc0ac\uc6a9\uc790 \ub4f1\ub85d\uc774 \uc131\uacf5\ud55c \uc774\ud6c4 \ud478\uc2dc \uba54\uc2dc\uc9c0 \uc218\uc2e0\uc774 \uac00\ub2a5\ud558\ub2e4.<\/li>\n\n\n\n<li>tkdyd<\/li>\n<\/ul>\n\n\n\n<p><strong>Parameters<\/strong><\/p>\n\n\n\n<ul>\n<li><strong>context<\/strong> (<em>Context<\/em>) \u2013 \ud604\uc7ac Context<\/li>\n\n\n\n<li><strong>cuid<\/strong> (<em>String<\/em>) \u2013 <a href=\"https:\/\/docs.morpheus.co.kr\/client\/push\/fcm.html\">Client ID<\/a> \uac12 <span style=\"text-decoration: underline\"><strong>(\uc0ac\uc6a9\uac00\ub2a5 \ubb38\uc790 : \uc54c\ud30c\ubcb3, \uc22b\uc790)<\/strong><\/span><\/li>\n\n\n\n<li><strong>cname<\/strong> (<em>String<\/em>) \u2013 <a href=\"https:\/\/docs.morpheus.co.kr\/client\/push\/fcm.html\">Client Name<\/a> \uac12<\/li>\n<\/ul>\n\n\n\n<p><strong>Result<\/strong><\/p>\n\n\n\n<ul>\n<li>Receiver \ub97c \ud1b5\ud574 \ucc98\ub9ac \uacb0\uacfc \ud1b5\ubcf4<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code has-pale-cyan-blue-background-color has-background\"><code>PushManager.getInstance().registerServiceAndUser(Context context, JSONObject params);<\/code><\/pre>\n\n\n\n<ul>\n<li><a href=\"https:\/\/docs.morpheus.co.kr\/client\/push\/fcm.html\">Client ID<\/a> \uc640 <a href=\"https:\/\/docs.morpheus.co.kr\/client\/push\/fcm.html\">Client Name<\/a> \uc73c\ub85c User \ub4f1\ub85d<\/li>\n\n\n\n<li>\uc0ac\uc6a9\uc790 \ub4f1\ub85d\uc774 \uc131\uacf5\ud55c \uc774\ud6c4 \ud478\uc2dc \uba54\uc2dc\uc9c0 \uc218\uc2e0\uc774 \uac00\ub2a5\ud558\ub2e4.<\/li>\n\n\n\n<li>Device ID\ub97c custom \ub4f1\ub85d \uc2dc \uc0ac\uc6a9 \uac00\ub2a5<\/li>\n<\/ul>\n\n\n\n<p><strong>Parameters<\/strong><\/p>\n\n\n\n<ul>\n<li><strong>context<\/strong> (<em>Context<\/em>) \u2013 \ud604\uc7ac Context<\/li>\n\n\n\n<li><strong>params<\/strong> (<em>JSONObject<\/em>) \u2013 \uc544\ub798 \ud45c \ucc38\uc870<\/li>\n<\/ul>\n\n\n\n<p>&lt;JSONObject key \uac12\uc5d0 \ub300\ud55c \uc124\uba85&gt;<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Key<\/strong><\/td><td><strong>Type<\/strong><\/td><td><strong>Necessary<\/strong><\/td><td><strong>Description<\/strong><\/td><\/tr><tr><td>PushConstants.KEY_CUID<\/td><td>String<\/td><td>\ud544\uc218<\/td><td><a href=\"https:\/\/clouddocs.morpheus.co.kr\/client\/sdk\/iOS.html\">Client ID<\/a><\/td><\/tr><tr><td>PushConstants.KEY_CNAME<\/td><td>String<\/td><td>\ud544\uc218<\/td><td><a href=\"https:\/\/clouddocs.morpheus.co.kr\/client\/sdk\/iOS.html\">Client Name<\/a><\/td><\/tr><tr><td>PushConstants.KEY_DEVICE_ID<\/td><td>String<\/td><td>\uc120\ud0dd<\/td><td>Device ID<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><strong>Result<\/strong><\/p>\n\n\n\n<ul>\n<li>Receiver \ub97c \ud1b5\ud574 \ucc98\ub9ac \uacb0\uacfc \ud1b5\ubcf4<\/li>\n<\/ul>\n\n\n\n<ul>\n<li><em><strong>Unregister Service<\/strong><\/em><\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code has-pale-cyan-blue-background-color has-background\"><code>PushManager.getInstance().unregisterPushService(Context context);<\/code><\/pre>\n\n\n\n<ul>\n<li>\ud478\uc2dc \uc11c\ube44\uc2a4\ub97c \ud574\uc81c\ud55c\ub2e4.<\/li>\n\n\n\n<li>\ud478\uc2dc \uc11c\ube44\uc2a4\uac00 \ud574\uc81c\ub418\uba74 \ud478\uc2dc \uba54\uc2dc\uc9c0 \uc218\uc2e0\uc774 \ubd88\uac00\ub2a5\ud558\ub2e4.<\/li>\n<\/ul>\n\n\n\n<p><strong>Parameters<\/strong><\/p>\n\n\n\n<ul>\n<li><strong>context<\/strong> (<em>Context<\/em>) \u2013 \ud604\uc7ac Context<\/li>\n<\/ul>\n\n\n\n<p><strong>Result<\/strong><\/p>\n\n\n\n<ul>\n<li>Receiver \ub97c \ud1b5\ud574 \ucc98\ub9ac \uacb0\uacfc \ud1b5\ubcf4<\/li>\n<\/ul>\n\n\n\n<ul>\n<li><strong><em>Receive Push Message<\/em><\/strong><\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code has-pale-cyan-blue-background-color has-background\"><code>PushManager.getInstance().pushMessageReceiveConfirm(Context context, String notification);<\/code><\/pre>\n\n\n\n<ul>\n<li>\ud1b5\uacc4\ub97c \uc704\ud55c API<\/li>\n\n\n\n<li>\ud478\uc2dc \uba54\uc2dc\uc9c0 \uc218\uc2e0 \uc2dc \uc218\uc2e0\uc774 \ud655\uc778\ub41c \uc0c1\ud0dc\uc784\uc744 \uc11c\ubc84\uc5d0 \uc804\uc1a1\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<p><strong>Parameters<\/strong><\/p>\n\n\n\n<ul>\n<li><strong>context<\/strong> (<em>Context<\/em>) \u2013 \ud604\uc7ac Context<\/li>\n\n\n\n<li><strong>notification<\/strong> (<em>String<\/em>) \u2013 \uc218\uc2e0\ud55c push message(JSONObject\uc758 string\uac12)<\/li>\n<\/ul>\n\n\n\n<ul>\n<li><strong><em>Read Push Message<\/em><\/strong><\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code has-pale-cyan-blue-background-color has-background\"><code>PushManager.getInstance().pushMessageReadConfirm (Context context, String notification);<\/code><\/pre>\n\n\n\n<ul>\n<li>\ud1b5\uacc4\ub97c \uc704\ud55c API<\/li>\n\n\n\n<li>\uc0ac\uc6a9\uc790\uac00 \ud478\uc2dc \uba54\uc2dc\uc9c0\ub97c \uc77d\uc740 \uacbd\uc6b0, \uba54\uc2dc\uc9c0\ub97c \uc77d\uc740 \uc0c1\ud0dc\uc784\uc744 \uc11c\ubc84\uc5d0 \uc804\uc1a1\ud55c\ub2e4.<\/li>\n<\/ul>\n\n\n\n<p><strong>Parameters<\/strong><\/p>\n\n\n\n<ul>\n<li><strong>context<\/strong> (<em>Context<\/em>) \u2013 \ud604\uc7ac Context<\/li>\n\n\n\n<li><strong>notification<\/strong> (<em>String<\/em>) \u2013 \uc218\uc2e0\ud55c push message(JSONObject\uc758 string\uac12)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Push APIs \ud0a4\uac12 \uc815\uc758<\/h3>\n\n\n\n<ul>\n<li>API \ud638\ucd9c\uc5d0 \ub530\ub978 \uacb0\uacfc\uac12 (BroadCastReceiver bundle key)<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Key<\/strong><\/td><td><strong>Description (<\/strong><strong>\uacb0\uacfc\uac12<\/strong><strong>)<\/strong><\/td><\/tr><tr><td>PushConstantsEx.COMPLETE_BUNDLE.REG_USER<\/td><td>\uc0ac\uc6a9\uc790 \ub4f1\ub85d<\/td><\/tr><tr><td>PushConstantsEx.COMPLETE_BUNDLE.UNREG_USER<\/td><td>\uc0ac\uc6a9\uc790 \ud574\uc81c<\/td><\/tr><tr><td>PushConstantsEx.COMPLETE_BUNDLE.UPDATE_PUSHSERVICE_DATE<\/td><td>push service \uac31\uc2e0<\/td><\/tr><tr><td>PushConstantsEx.COMPLETE_BUNDLE.REG_PUSHSERVICE<\/td><td>\ud478\uc2dc \uc11c\ube44\uc2a4 \ub4f1\ub85d<\/td><\/tr><tr><td>PushConstantsEx.COMPLETE_BUNDLE.UNREG_PUSHSERVICE<\/td><td>\ud478\uc2dc \uc11c\ube44\uc2a4 \ud574\uc81c<\/td><\/tr><tr><td>PushConstantsEx.COMPLETE_BUNDLE.READ_CONFIRM<\/td><td>\uc77d\uc74c ack<\/td><\/tr><tr><td>PushConstantsEx.COMPLETE_BUNDLE.RECEIVE_CONFIRM<\/td><td>\uc218\uc2e0 ack<\/td><\/tr><tr><td>PushConstantsEx.COMPLETE_BUNDLE.IS_REGISTERED_SERVICE<\/td><td>\uc11c\ube44\uc2a4 \ub4f1\ub85d \uc5ec\ubd80 (register service \ud638\ucd9c \uc2dc, \uc218\uc2e0 \ub420 \uc218 \uc788\uc74c)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<ul>\n<li>BroadCastReceiver bundle key return \uac12 (STATUS CODE &#8211; \ud1b5\uc2e0\uad00\ub828)<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Key<\/strong><\/td><td><strong>Description (<\/strong><strong>\uacb0\uacfc\uac12<\/strong><strong>)<\/strong><\/td><\/tr><tr><td>PushConstants.RESULTCODE_OK<\/td><td>\uc815\uc0c1<\/td><\/tr><tr><td>PushConstants.RESULTCODE_HTTP_ERR<\/td><td>\ud1b5\uc2e0 \uc624\ub958 &#8211; connection \uad00\ub828 error<\/td><\/tr><tr><td>PushConstants.RESULTCODE_AUTHKEY_ERR<\/td><td>\uc778\uc99d\ud0a4 \ud68d\ub4dd \uc624\ub958<\/td><\/tr><tr><td>PushConstants.RESULTCODE_RESPONSE_ERR<\/td><td>\uc751\ub2f5 \uc624\ub958 &#8211; \uc624\ub958\ucf54\ub4dc\ub97c \uc218\uc2e0\ud55c \uacbd\uc6b0<\/td><\/tr><tr><td>PushConstants.RESULTCODE_INTERNAL_ERR<\/td><td>\uc815\uc758\ub418\uc9c0 \uc54a\uc740 \uc608\uae30\uce58 \ubabb\ud55c \uc624\ub958\uac00 \ubc1c\uc0dd\ud55c \uacbd\uc6b0<\/td><\/tr><tr><td>PushConstants.RESULTCODE_AUTHKEY_ERR2<\/td><td>\uc778\uc99d\ud0a4 \ud68d\ub4dd \uc624\ub958<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<ul>\n<li>BroadCastReceiver Intent \uad00\ub828 \ud0a4\uac12 (\ucc98\ub9ac \uacb0\uacfc )<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Key<\/strong><\/td><td><strong>Description (<\/strong><strong>\uacb0\uacfc\uac12<\/strong><strong>)<\/strong><\/td><\/tr><tr><td>PushConstants.KEY_RESULT<\/td><td>ACTION_COMPLETED\uc5d0 Extras\uc6a9 \uc804\uccb4 \ud638\ucd9c \uac12<\/td><\/tr><tr><td>PushConstants.KEY_BUNDLE<\/td><td>\ubc88\ub4e4\uc6a9 KEY<\/td><\/tr><tr><td>PushConstants.KEY_ISREGISTER<\/td><td>\uc11c\ube44\uc2a4 \ub4f1\ub85d \uc5ec\ubd80\uc5d0 \ub300\ud55c \uacb0\uacfc\uac12<\/td><\/tr><tr><td>PushConstants.KEY_RESULT_CODE<\/td><td>\uacb0\uacfc \ucf54\ub4dc (\uc815\uc0c1 : 200)<\/td><\/tr><tr><td>PushConstants.KEY_RESULT_MSG<\/td><td>\ud478\uc2dc \uc11c\ubc84 \ud1b5\uc2e0 \uc774\ud6c4 \uc218\uc2e0\ub41c \uba54\uc2dc\uc9c0<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">BroadcastReceiver \ub4f1\ub85d \ubc29\ubc95 (\uc608\uc2dc)<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">receiver \ub4f1\ub85d<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>private BroadcastReceiver mLoginBroadcastReceiver;\n\npublic void registerReceiver() {\n        if (mLoginBroadcastReceiver != null) {\n                return;\n        }\n\n        IntentFilter intentFilter = new IntentFilter();\n        intentFilter.addAction(LoginActivity.this.getPackageName()  + PushConstantsEx.ACTION_COMPLETED);\n\n        mLoginBroadcastReceiver = new BroadcastReceiver() {\n\n                @Override\n                public void onReceive(Context context, Intent intent) {\n\n                        if(!PushUtils.checkValidationOfCompleted(intent, context)){\n                                return;\n                        }\n\n                        \/\/intent \uc815\ubcf4\uac00 \uc815\uc0c1\uc801\uc778\uc9c0 \ud310\ub2e8\n                        String result = intent.getExtras().getString(PushConstants.KEY_RESULT);\n                        String bundle = intent.getExtras().getString(PushConstantsEx.KEY_BUNDLE);\n\n                        JSONObject result_obj = null;\n                        String resultCode = \"\";\n                        String resultMsg = \"\";\n                        try {\n                                result_obj = new JSONObject(result);\n                                resultCode = result_obj.getString(PushConstants.KEY_RESULT_CODE);\n                                resultMsg = result_obj.getString(PushConstants.KEY_RESULT_MSG);\n                        } catch (JSONException e) {\n                                \/\/ TODO Auto-generated catch block\n                                e.printStackTrace();\n                        }\n\n                        \/\/Action\uc5d0 \ub530\ub77c \ubd84\uae30 (\uc774\ubbf8 \uc11c\ube44\uc2a4 \ub4f1\ub85d\uc774 \ub41c \uacbd\uc6b0 \ub2e4\uc74c process \uc774\ub3d9)\n                        if(bundle.equals(PushConstantsEx.COMPLETE_BUNDLE.REG_USER)) {\n                                if (resultCode.equals(PushConstants.SUCCESS_RESULT_CODE)) {\n                                        Toast.makeText(context, \"\ub85c\uadf8\uc778 \uc131\uacf5!\", Toast.LENGTH_SHORT).show();\n                                        setSendTest();\n                                }else {\n                                        Toast.makeText(context, \"&#091;LoginActivity] error code: \" + resultCode + \" msg: \" + resultMsg, Toast.LENGTH_SHORT).show();\n                                }\n                        }else if (bundle.equals(PushConstantsEx.COMPLETE_BUNDLE.UNREG_PUSHSERVICE)) {\n\n                                if (resultCode.equals(PushConstants.SUCCESS_RESULT_CODE)) {\n                                        Toast.makeText(context, \"\ud574\uc81c \uc131\uacf5!\", Toast.LENGTH_SHORT).show();\n                                }else {\n\n                                        Toast.makeText(context, \"&#091;LoginActivity] error code: \" + resultCode + \" msg: \" + resultMsg, Toast.LENGTH_SHORT).show();\n                                }\n                        }else if (bundle.equals(PushConstantsEx.COMPLETE_BUNDLE.REG_SERVICE_AND_USER)) {\n\n                                if (resultCode.equals(PushConstants.SUCCESS_RESULT_CODE)) {\n                                        Toast.makeText(context, \"\ub85c\uadf8\uc778 \uc131\uacf5!\", Toast.LENGTH_SHORT).show();\n                                        setSendTest();\n                                }else {\n                                        Toast.makeText(context, \"&#091;LoginActivity] error code: \" + resultCode + \" msg: \" + resultMsg, Toast.LENGTH_SHORT).show();\n                                }\n                        }else if(bundle.equals(PushConstantsEx.COMPLETE_BUNDLE.IS_REGISTERED_SERVICE)){\n                                String isRegister = \"\";\n                                try {\n                                        isRegister = result_obj.getString(PushConstants.KEY_ISREGISTER);\n                                } catch (JSONException e) {\n                                        \/\/ TODO Auto-generated catch block\n                                        e.printStackTrace();\n                                }\n\n                                if(isRegister.equals(\"C\")){\n                                        Toast.makeText(context, \"CHECK ON &#091; \uc0ac\uc6a9\uc790 \uc7ac\ub4f1\ub85d \ud544\uc694 !! ]\", Toast.LENGTH_LONG ).show();\n                                }else if(isRegister.equals(\"N\")){\n                                        Toast.makeText(context, \"CHECK ON &#091; \uc11c\ube44\uc2a4 \uc7ac\ub4f1\ub85d \ud544\uc694 !! ]\", Toast.LENGTH_LONG).show();\n                                }else{\n                                        Logger.i(\"\uc11c\ube44\uc2a4 \uc815\uc0c1 \ub4f1\ub85d \uc0c1\ud0dc \");\n                                }\n                        }\n                }\n        };\n\n        LocalBroadcastManager.getInstance(getApplicationContext()).registerReceiver(mLoginBroadcastReceiver, intentFilter);\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">receiver \ud574\uc81c<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>public void unregisterReceiver() {\n        if (mLoginBroadcastReceiver != null) {\n                LocalBroadcastManager.getInstance(getApplicationContext()).unregisterReceiver(mLoginBroadcastReceiver);\n                mLoginBroadcastReceiver = null;\n        }\n}<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">Push Payload<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Payload \ud56d\ubaa9<\/h3>\n\n\n\n<ul>\n<li>JSONObject key \uac12\uc5d0 \ub300\ud55c \uc124\uba85 [key\uac00 \uc18c\ubb38\uc790\uc784]<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td><strong>Key<\/strong><\/td><td><strong>\ud65c\uc6a9\ubc29\ubc95<\/strong><\/td><\/tr><tr><td>alert<\/td><td>\ud478\uc2dc \uba54\uc2dc\uc9c0 \uc81c\ubaa9(\uc635\uc158)\uacfc \uba54\uc2dc\uc9c0 \ub0b4\uc6a9\uc774 JSON \ud615\uc2dd\uc73c\ub85c \uc804\ub2ec\ub428<\/td><\/tr><tr><td>ext<\/td><td>\ud478\uc2dc \uba54\uc2dc\uc9c0 \uc678\uc5d0 \ucd94\uac00\uc801\uc778 \uc138\ubd80 \uc815\ubcf4\ub97c \uc804\ub2ec<\/td><\/tr><tr><td>pushkey<\/td><td>public push\uc758 \ud1a0\ud070 \uc720\ud6a8\uc131\uc744 \uc704\ud574 \uad00\ub9ac\ub418\ub294 \ud0a4 (\uc11c\ubc84\uad00\uc810)<\/td><\/tr><tr><td>seqno<\/td><td>Push message\uc758 \uace0\uc720 \ud0a4\uac12<\/td><\/tr><tr><td>appid<\/td><td>Push \uc11c\ube44\uc2a4\uac00 \uad00\ub9ac\ub418\ub294 \uc571 ID ( <a href=\"https:\/\/clouddocs.morpheus.co.kr\/client\/api\/ios_api.html\">Application ID<\/a>)<\/td><\/tr><tr><td>sender<\/td><td>\ubc1c\uc1a1\uc790 \ucf54\ub4dc (\uc11c\ubc84\uad00\uc810)<\/td><\/tr><tr><td>senddate<\/td><td>\ubc1c\uc1a1\ub41c \uc2dc\uac04 (\uc11c\ubc84\uad00\uc810)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Payload \uc608\uc2dc<\/h3>\n\n\n\n<ul>\n<li>\uc77c\ubc18(text) push \uba54\uc2dc\uc9c0 \uc608\uc2dc<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>{\n   \"aps\":{\n      \"badge\":\"0\",\n      \"sound\":\"alert.aif\",\n      \"alert\":\"{\\\"title\\\":\\\"\uba54\uc2dc\uc9c0 \ud14c\uc2a4\ud2b8\\\",\\\"body\\\":\\\"\uc77c\ubc18 \uba54\uc2dc\uc9c0 \ud14c\uc2a4\ud2b8\uc785\ub2c8\ub2e4.\\\"}\"\n   },\n   \"mps\":{\n      \"appid\":\"LGU-SAMPLEAPP-00001\",\n      \"ext\":\"{}\",\n      \"seqno\":\"LtFCtmX1PI.6cJtPW\",\n      \"sender\":\"LGUR_cm-push-provider-ad-1_AD|E\",\n      \"senddate\":\"2022-06-13 09:52:28\",\n      \"db_in\":\"N\",\n      \"pushkey\":\"2427efdf1b62cd9dbdf174bbdff048f8051461e1\"\n   }\n}<\/code><\/pre>\n\n\n\n<ul>\n<li>\uc774\ubbf8\uc9c0 push \uba54\uc2dc\uc9c0 \uc608\uc2dc<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>{\n   \"aps\":{\n      \"badge\":\"17\",\n      \"sound\":\"alert.aif\",\n      \"alert\":\"{\\\"title\\\":\\\"\uc774\ubbf8\uc9c0 \ud14c\uc2a4\ud2b8\\\",\\\"body\\\":\\\"\uc774\ubbf8\uc9c0\ub97c \ud3ec\ud568\ud55c \uba54\uc2dc\uc9c0 \ud14c\uc2a4\ud2b8\uc785\ub2c8\ub2e4.\\\"}\"\n   },\n   \"mps\":{\n      \"appid\":\" LGU-SAMPLEAPP-00001\",\n      \"ext\":\"{\\\"imageUrl\\\":\\\"https:\\\/\\\/df25hb5tuwkue.cloudfront.net\\\/push\\\/abc\"}\",\n      \"seqno\":\"4YslPTW9Lv.6cJtPY\",\n      \"sender\":\" LGUR_cm-push-provider-ad-1_AD|E \",\n      \"senddate\":\"2022-06-13 09:54:01\",\n      \"db_in\":\"N\",\n      \"pushkey\":\"2427efdf1b62cd9dbdf174bbdff048f805146132\"\n   }\n}<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\uac1c\uc694 Morpheus Push\ub294 \uc2a4\ub9c8\ud2b8\ud3f0 OS\uc5d0\uc11c \uc9c0\uc6d0\ud558\ub294 PNS(Push Notification Server)\ub97c \uae30\ubc18\uc73c\ub85c \ud55c \uba54\uc2dc\uc9c0 \uc804\uc1a1 \ud50c\ub7ab\ud3fc\uc774\ub2e4. Android Client \uc5d0\uc11c\ub294 UPMC WAS \uc5d0\uc11c \uc81c\uacf5\ud558\ub294 Push API \ub97c \uac01\uac01 \ubc84\uc804 \uaddc\uaca9\uc5d0 \ub9de\ucdb0 \uc5f0\ub3d9\ud558\uc5ec \uc6d0\ud65c\ud558\uac8c Push Service \ub97c \uc6b4\uc601\ud558\uae30 \uc704\ud55c \ub77c\uc774\ube0c\ub7ec\ub9ac\ub97c \uc81c\uacf5\ud55c\ub2e4. Android \uac1c\ubc1c \uc0d8\ud50c\uc740 https:\/\/total-msg-hub.github.io\/push-android-sample\/ \ub97c \ucc38\uc870\ud558\uc2dc\uae30 \ubc14\ub78d\ub2c8\ub2e4. \uc6a9\uc5b4 FCM UPMC Service \ub4f1\ub85d Service \ud574\uc81c User \ub4f1\ub85d ServiceAndUser \ub4f1\ub85d [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"set","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-gradient":""}}},"doc_category":[32],"doc_tag":[],"_links":{"self":[{"href":"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-json\/wp\/v2\/docs\/1132"}],"collection":[{"href":"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-json\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-json\/wp\/v2\/types\/docs"}],"author":[{"embeddable":true,"href":"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-json\/wp\/v2\/comments?post=1132"}],"version-history":[{"count":22,"href":"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-json\/wp\/v2\/docs\/1132\/revisions"}],"predecessor-version":[{"id":3870,"href":"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-json\/wp\/v2\/docs\/1132\/revisions\/3870"}],"wp:attachment":[{"href":"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-json\/wp\/v2\/media?parent=1132"}],"wp:term":[{"taxonomy":"doc_category","embeddable":true,"href":"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-json\/wp\/v2\/doc_category?post=1132"},{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/doc.msghub.uplus.co.kr\/guide\/wp-json\/wp\/v2\/doc_tag?post=1132"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}