0

Android와 Firebase 클라우드 메시징을 통합하고 싶습니다. Firebase에서 내 계정을 만들고 앱과 통합하여 Firebase 콘솔에서 메시지를 보냈습니다. 앱에서 메시지를 받았습니다. 지금까지 이런 것들이 효과가있는 것 같습니다.Android와 Firebase 클라우드 메시징

제 질문은 MongoDB로 구성된 내 자신의 데이터베이스 서버에 Firebase를 연결하여 통지를 보낼 사용자의 데이터를 확인하는 방법입니다. 어떤 사람이 나를 안내 할 수 있습니까?

답변

1

꽤 많은 단계가 있지만 여기에 게시하는 데 너무 길지만 방금 지침을 요청한 이후로 관련된 단계를 실행하려고합니다.

  • 귀하의 안드로이드 애플 리케이션은 MongoDB 인스턴스를 실행하는 서버에 FCM 토큰을 보내야합니다. this FCM 설명서 페이지를 참조하려면 onTokenRefresh() 방법에 sendRegistrationToServer(refreshedToken);을 구현해야합니다.
  • 서버가 FCM 토큰을 보내는 클라이언트를 청취하고 있어야합니다. 이것은 클라이언트 토큰 및 사용자 이름으로 POST 요청을 수신하는 HTTP 엔드 포인트 일 수 있습니다. 그런 다음 세부 정보를 데이터베이스에 저장할 수 있습니다. (가능한 경우 HTTPS를 사용해야합니다.)
  • 는 클라우드 메시징 API를 사용 : https://console.developers.google.com/apis/api/fcm.googleapis.com/overview?project=insert-project-id-here
  • 당신은 Firebase HTTP v1 API를 사용하여 MongoDB를 실행하는 서버에서 FCM 메시지를 보낼 수 있지만, 먼저 그렇게 할 당신의 서버에 권한을 부여해야합니다. 지침 here. 모든 API 요청의 HTTP 헤더에 포함되어야하는 인증 토큰을 받게됩니다.
  • 유효한 토큰을 가지고 있으면 본문에 메시지의 세부 정보가 들어있는 https://fcm.googleapis.com/v1/{parent=projects/*}/messages:send으로 HTTP POST 요청을 보낼 수 있습니다. This page에는 API 끝점에 대한 설명이 포함되어 있습니다. This page에는 보내려는 메시지 본문에 대한 설명이 들어 있습니다.

간단한 (현재 테스트되지 않은) POST 요청의 예입니다. 헤더가 포함되어야

https://fcm.googleapis.com/v1/projects/fcm-test-12345/messages:send

: 당신이 프로젝트 ID가 fcm-test-12345이었다 있다면, 당신은에 POST 요청 만들 것

Authorization: Bearer <your access token> 
Content-Type: application/json 

을 그리고 몸은 아래와 같습니다

{ 
    "message": { 
    "data": { "key": "value" }, // optional data to send to client. 
    "notification": { 
     "title": "Notification title", 
     "body": "Notification body" 
    }, 
    "token": "<client device token from MongoDB>" 
    } 
}