본문 바로가기
Develop/Firebase

[Firebase] Android FCM 전송 테스트 Postman

by 알려 2022. 2. 25.
728x90
반응형
  • Android FCM을 통해 메시지를 받을 수 있도록 세팅하였다면 서버가 없더라도 테스트 가능함
  • 포스트맨과 FirebaseConsole을 이용하여 테스트 할 수 있음

 

  • 먼저 포스트맨을 통해 알아 보도록 함
  • 먼저 요청 타입을 Post로 변경하고 url을 https://fcm.googleapis.com/fcm/send로 입력한다.

요청타입과 Url

  • Header입력 탭으로 이동하여 Authorization과 Content-Type을 입력해준다.
  • Authorization에는 서버 키를 입력해 줘야 하는데 서버 키는 FirebaseConsole의 프로젝트 설정 -> 클라우드 메시징에서 복사해온다.
  • 복사해온 키를 "key=" 텍스트를 직접 입력한 후 그뒤에 붙여주도록 한다.
  • Content-Type은 application/json을 입력해줘야 하는데 위에 이미 입력돼있는 항목이 있는데 추가적으로 입력하면 그 항목은 자동으로 제거되기 때문에 신경 쓰지 않고 입력한다.

Postman Headers
FirebaseConsole 서버키

  • 다음은 Body부분을 작성해 줘야 하는데 하기 캡처와 같이 입력하면 된다.
  • to항목의 토큰 값을 가져오는 방식은 아래에 설명해 놓았다.

{
    "to":"Token",
    "data":{
        "title":"FCM Title",
        "body": "FCM Message"
    }
}
  • 토큰을 알 수 있는 방법
  • 최초 실행 또는 캐시 삭제 후 첫 실행 때 하기 콜백을 통해 전달되는 값을 알 수 있다.
 override fun onNewToken(token: String) {
        //새로운 token이 생성될때마다 호출되는 callback
        Log.d("onNewToken","${token}")
        super.onNewToken(token)
    }
  • 다른 방법으로는 직접 호출해서 전달받으면 된다.
FirebaseMessaging.getInstance().token.addOnCompleteListener(OnCompleteListener { task ->
    if (!task.isSuccessful) {
        return@OnCompleteListener
    }

    // Get new FCM registration token
    val token = task.result
    Log.d("token", token)
})
  • 토큰을 가져와 입력 후 포스트맨의 Send버튼을 통해 전송하면 onMessageRecieved를 통해 전달받을 수 있다.
override fun onMessageReceived(remoteMessage: RemoteMessage) {
    //메세지를 전달 받는 function
    super.onMessageReceived(remoteMessage)
}
  • Firebase Console을 통한 방법은 하기 링크 별도 포스팅함

2022.02.25 - [Develop/Firebase] - [Firebase] Android FCM 전송 테스트 FirebaseConsole

  • 설명으로 부족한 부분이 있다면 하기 영상 참고 바람

728x90
반응형

댓글