Android
Push Notifications
클라우드 코드로 Parse 푸시 알림 구현하는 방법
15 분
클라우드 코드를 사용하여 parse 푸시 알림 보내기 소개 이 섹션에서는 back4app을 통해 클라우드 코드를 사용하여 푸시 알림을 보내는 방법을 설명합니다 이것이 어떻게 보일지입니다 언제든지 이 튜토리얼로 구축된 전체 android 프로젝트에 접근할 수 있습니다 github 저장소 전제 조건 이 튜토리얼을 완료하려면 다음이 필요합니다 안드로이드 스튜디오 back4app에서 생성된 앱 참고 새 parse 앱 튜토리얼 을 따라 back4app에서 parse 앱을 만드는 방법을 배우세요 back4app에 연결된 안드로이드 앱 참고 parse sdk 설치 튜토리얼 을 따라 back4app에 연결된 android studio 프로젝트를 만드세요 다음의 1단계 부터 5단계 까지 back4app 대시보드를 통한 푸시 알림 튜토리얼 을 주의 깊게 따라 앱에 푸시 알림을 설정하세요 api 레벨 27 이상에서 실행되는 장치(또는 가상 장치 ) 1 푸시 수신을 위한 안드로이드 설정 푸시 알림을 위해 등록된 장치에 설치된 모든 parse 애플리케이션에는 관련된 설치 설치 객체가 있습니다 설치 설치 객체는 푸시 알림을 타겟팅하는 데 필요한 모든 데이터를 저장하는 곳입니다 예를 들어, 귀하의 앱에서 사용자가 관심 있는 팀을 저장하여 그들의 성과에 대한 업데이트를 보낼 수 있습니다 설치 설치 객체를 저장하는 것은 푸시 관련 앱 열기 이벤트를 추적하는 데도 필요합니다 알림을 보내기 시작하는 가장 간단한 방법은 채널을 사용하는 것입니다 이를 통해 푸시를 보내기 위한 게시자 구독자 모델을 사용할 수 있습니다 장치는 하나 이상의 채널에 구독함으로써 시작하며, 이후 이러한 구독자에게 알림을 보낼 수 있습니다 특정 설치 설치 에 의해 구독된 채널은 채널 채널 필드에 저장됩니다 설치 설치 객체의 푸시 알림 작업을 시작하려면 다음 단계가 필요합니다 프로젝트 템플릿을 다운로드한 경우, project template , app/src/main/res/values/string xml app/src/main/res/values/string xml 파일과 gcmsenderid gcmsenderid 를 firebase에서 얻은 androidmanifest xml androidmanifest xml 파일에서 변경하는 것을 잊지 마세요 다음 종속성을 가져옵니다 2\ parse initialize(this) parse initialize(this) 로 parse를 초기화합니다 3\ 구독하고 싶은 채널의 새 배열을 만듭니다 이 예제에서는 news news 채널이 생성됩니다 4\ gcmsenderid gcmsenderid , firebase console , 명령어 installation put("gcmsenderid", "your firebase gcm sender id here") installation put("gcmsenderid", "your firebase gcm sender id here") 를 통해 설치에 추가합니다 키를 얻는 방법을 알고 싶다면 1단계 를 확인하세요 대시보드를 통한 푸시 알림 튜토리얼 5\ 채널 채널 객체를 설치 설치 에 추가합니다 명령어는 installation put("channels", channels) installation put("channels", channels) 입니다 6\ installation saveinbackground() installation saveinbackground() 를 통해 설치를 데이터베이스에 저장합니다 다음 코드는 이러한 단계를 실행합니다 1 parse initialize(this); 2 arraylist\<string> channels = new arraylist<>(); 3 channels add("news"); 4 parseinstallation installation = parseinstallation getcurrentinstallation(); 5 // don't forget to change the line below with the sender id you obtained at firebase 6 installation put("gcmsenderid", "your firebase gcm sender id here"); 7 installation put("channels", channels); 8 installation saveinbackground(); 2 클라우드 코드를 생성하세요 시작하는 방법에 대한 자세한 내용은 cloud code 를 참조하십시오 android용 cloud code 튜토리얼 cloud code를 넣을 js js 파일을 생성합니다 이 예제에서는 main js main js 파일이 생성됩니다 푸시 알림을 호출하기 위해 parse cloud define parse cloud define , cloud 함수를 정의합니다 이 예제에서는 이 함수의 이름이 parse push send parse push send 입니다 이 작업에는 마스터 키 를 사용하는 것이 필요합니다 다음 코드는 이러한 단계를 실행합니다 parse server 3 x //main js 1 parse cloud define("pushsample", (request) => { 2 3 return parse push send({ 5 channels \["news"], 6 data { 7 title "hello from the cloud code", 8 alert "back4app rocks!", 9 } 10 }, { usemasterkey true }); 11 }); parse server 2 x //main js 1 parse cloud define("pushsample", function (request, response) { 2 parse push send({ 3 channels \["news"], 4 data { 5 title "hello from the cloud code", 6 alert "back4app rocks!", 7 } 8 }, { 9 success function () { 10 // push was successful 11 response success("push sent"); 12 console log("success push sent"); 13 }, 14 error function (error) { 15 // push was unsucessful 16 response error("error with push " + error); 17 console log("error " + error); 18 }, 19 usemasterkey true 20 }); 21 }); 3 cloud code에 업로드 앱으로 가세요 back4app 웹사이트 를 클릭하세요 대시보드 대시보드 다음 항목을 찾으세요 클라우드 코드 클라우드 코드 를 클릭하세요 함수 및 웹 호스팅 함수 및 웹 호스팅 이렇게 생겼습니다 3\ 파일을 업로드하거나 새 파일을 생성하세요 (현재 main js main js 파일을 브라우저에서 직접 편집할 수 있습니다) 그런 다음, 배포 배포 를 클릭하세요 4 안드로이드 앱에서 클라우드 코드 호출하기 다음 종속성을 가져오세요 2\ parsecloud callfunctioninbackground parsecloud callfunctioninbackground 를 호출합니다 pushsample pushsample 클라우드 함수에서 1 final hashmap\<string, string> params = new hashmap<>(); 2 // calling the cloud code function 3 parsecloud callfunctioninbackground("pushsample", params, new functioncallback\<object>() { 4 @override 5 public void done(object response, parseexception exc) { 6 if(exc == null) { 7 // the function was executed, but it's interesting to check its response 8 alertdisplayer("successful push","check on your phone the notifications to confirm!"); 9 } 10 else { 11 // something went wrong 12 toast maketext(mainactivity this, exc getmessage(), toast length long) show(); 13 } 14 } 15 }); 위의 예에서 사용된 alertdisplayer alertdisplayer 메서드는 다음과 같습니다 3\ 장치가 열려 있는 동안 위의 함수를 호출하여 푸시 알림이 전송되고 있는지 테스트합니다 5 rest api에서 클라우드 코드를 호출하기 rest api는 클라우드 기능이 작동하는지 테스트하는 빠르고 쉬운 방법을 제공합니다 아래 코드를 터미널이나 명령 프롬프트에 사용하세요 명령줄을 시작하는 방법에 대해 더 알고 싶으시면 클릭하세요 linux , macos 또는 windows 푸시 알림을 테스트하려면, 장치가 열려 있는 동안 rest 코드를 사용하세요 완료되었습니다! 이 단계에서 back4app을 통해 클라우드 코드를 사용하여 푸시 알림을 보낼 수 있습니다!