본문 바로가기
블로그 이미지

방문해 주셔서 감사합니다! 항상 행복하세요!

  
   - 문의사항은 메일 또는 댓글로 언제든 연락주세요.
   - "해줘","답 내놔" 같은 질문은 답변드리지 않습니다.
   - 메일주소 : lts06069@naver.com


기타

FCM 메시지 전송 규칙(서버 - 앱)

야근없는 행복한 삶을 위해 ~
by 마샤와 곰 2023. 10. 20.

 

서버에서 앱에게 FCM 메시지를 보내기 위해 구글링을 하면 만나는 일반적인 메시지 형태 입니다.

const message = {
  data: {
    score: '850',
    time: '2:45'
  },
  token: registrationToken
};

 

메시지를 보낼 때 전송할 data 필드와 fcm 토큰값을 넣어서 보내도록 되어 있습니다.

해당 코드는 물론 잘 동작하는데..

안드로이드에서만 오직 동작을 합니다.

IOS는 해당 메시지 규격으로 아무리 전송을 눌러도 보내어지지 않습니다.   * 2023-10-20 기준

 

이를 해결하기 위한 답은 Firebase 공식 사이트에서나온 메시지 전송규칙을 잘 보아야 합니다.

https://firebase.google.com/docs/cloud-messaging/send-message?hl=ko#send-a-batch-of-messages

 

앱 서버 전송 요청 작성  |  Firebase 클라우드 메시징

Google I/O 2023에서 Firebase의 주요 소식을 확인하세요. 자세히 알아보기 의견 보내기 앱 서버 전송 요청 작성 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. Fire

firebase.google.com

 

사이트를 들어가서 설명을 읽다가 중간쯤에 "일괄 메시지 전송" 이라는 내용을 볼 수 있습니다.

일괄?

 

해당 메시지 규칙을 적용 하려면 data 필드가 아니라 notification 필드를 사용해야 합니다.

const messages = {
  notification: { title: '메시지타이틀', body: '내용, 오직 문자형태만 허용' },
  token: registrationToken,
};

 

요렇게 형태를 바꾸어주면 IOS에서도 FCM 메시지를 잘 받을 수 있습니다.

구글링보다 중요한건 역시 공식 DOC인 듯 합니다

 

반응형
* 위 에니메이션은 Html의 캔버스(canvas)기반으로 동작하는 기능 입니다. Html 캔버스 튜토리얼 도 한번 살펴보세요~ :)
* 직접 만든 Html 캔버스 애니메이션 도 한번 살펴보세요~ :)

댓글