수색…


Cordova 안드로이드에서 Firebase Push Notification

Android 프로젝트에 Firebase 추가하기

앱에 Firebase 추가하기

앱에 Firebase를 추가하려면 Firebase 프로젝트와 앱을위한 Firebase 설정 파일이 필요합니다.

  1. Firebase 콘솔에 Firebase 프로젝트가 없다면 생성하십시오. 모바일 앱과 연결된 기존 Google 프로젝트가있는 경우 Google 프로젝트 가져 오기를 클릭합니다. 그렇지 않으면 새 프로젝트 만들기를 클릭합니다.
  2. Android 앱에 Firebase 추가를 클릭합니다. 기존 Google 프로젝트를 가져 오는 경우이 작업은 자동으로 수행 될 수 있으며 설정 파일을 다운로드하면됩니다.
  3. 메시지가 나타나면 앱의 패키지 이름을 입력하십시오. 앱이 사용하는 패키지 이름을 입력하는 것이 중요합니다. 이 경우에만 설정할 수 있습니다.
    Firebase 프로젝트에 앱을 추가 할 때.
  4. 결국 google-services.json 파일을 다운로드하게됩니다. 이 파일은 언제든지 다시 다운로드 할 수 있습니다. 아직 수행하지 않았다면 프로젝트의 모듈 폴더 (일반적으로 app /)에 복사하십시오.

Cordova Firebase 푸시 알림 플러그인

https://www.npmjs.com/package/cordova-plugin-fcm

액세스 토큰을 얻으려면 다음을 수행하십시오.

    FCMPlugin.getToken(
      function(token){
        alert(token);
      },
      function(err){
        console.log('error retrieving token: ' + err);
      }
    );

푸시 알림 수신을위한 콜백 :

    FCMPlugin.onNotification(
      function(data){
        if(data.wasTapped){
          //Notification was received on device tray and tapped by the user.
          alert( JSON.stringify(data) );
        }else{
          //Notification was received in foreground. Maybe the user needs to be notified.
          alert( JSON.stringify(data) );
        }
      },
      function(msg){
        console.log('onNotification callback successfully registered: ' + msg);
      },
      function(err){
        console.log('Error registering onNotification callback: ' + err);
      }
    );

receivedEvent 함수 내에서 get.js 파일 내에 푸시 알림을 받기위한 get 액세스 토큰 및 콜백을 배치합니다.

REST API를 통한 푸시 알림 보내기

    //POST: https://fcm.googleapis.com/fcm/send 
    //HEADER: Content-Type: application/json 
    //HEADER: Authorization: key=AIzaSyAMMh0mdVIRXPcBejyatAtdZgmklepwoNs //key is server-key
    {
      "notification":{
        "title":"Notification title",  //Any value 
        "body":"Notification body",  //Any value 
        "sound":"default", //If you want notification sound 
        "click_action":"FCM_PLUGIN_ACTIVITY",  //Must be present for Android 
        "icon":"fcm_push_icon"  //White icon Android resource
      },
      "data":{
        "param1":"value1", /Any data to be retrieved in the notification callback 
        "param2":"value2"
      },
        "to":"eRImo7algBM:APA91bHSxSOdmgsOi9su_XytEtCbei0Zi0ODgm76VHvbqeb-WPoZcLyNVpnaLWPLw7U1u93hO0ZhtBxn_hVGxPAwxXXfc-yNy6_kkfzUdTpcI2QPB0vzJBmOFzX3RRZ15wmFkCUFtyhc", //Topic or single device 
        "priority":"high", //If not set, notification won't be delivered on completely closed iOS app
        "restricted_package_name":"com.zensar.fcm" //Optional. Set for application filtering 
    }

Postman rest client를 사용하여 위의 REST API를 설정하십시오.

작동 방식 단일 장치 또는 주제로 푸시 알림을 보냅니다.

1. 응용 프로그램이 포 그라운드에 있음 : 사용자가 장치 알림 표시 줄에 알림 메시지를받습니다. 사용자가 알림을 탭하면 응용 프로그램이 열립니다. 사용자는 JavaScript 콜백에서 알림 데이터를 수신합니다. '

1.b 응용 프로그램이 백그라운드에 있음 : 사용자가 장치 알림 표시 줄에 알림 메시지를받습니다. 사용자가 알림을 탭하면 응용 프로그램이 열립니다. 사용자는 JavaScript 콜백에서 알림 데이터를 수신합니다. '



Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow