서버에서 보내는 알림 내용을 받은 사용자가 설정한 언어에 따라서 번역 후 알림을 보내줘야했다.
그런데 FCM 테스트 메시징을 보낼 때 앱이 켜진 상태에서는 정상적으로 onMessageReceived 코드 내용들이 실행되었는데 이상하게도 앱이 꺼지거나 백그라운드에 놓인 상황에서는 onMessageReceived쪽 코드 자체가 아예 실행을 안했다.
FCM에서 보내는 메시지는 2개로 나뉜다.
1. data
2. notification
그런데 notification을 설정으로 사용자에게 보내지는 경우에는 onMessageReceived 자체가 실행이 안된다!! 이걸 모르고 온 곳에 Lop를 찍어가며 확인했다..시간이 너무 아까운 ㅠ
나 같은 경우 백엔드분들과 협업을 하니까 백엔드분들이 서버에서 JSON으로 날려줄 때 notification이 아닌 data로 설정해서 fcm을 보내달라고 하면 될 것 같다!