Android [ Java, Kotlin ]
Android Firebase FCM 정리
Moonsu99
2023. 11. 15. 21:17
✉️ Firebase Cloud Messaging
###FCM을 관리자 페이지를 통해 메시지를 관리하는 절차.
N1. 관리자 페이지에서 필요한 기능 작성
- 메시지 생성 및 편집
- 페이지에서 메시지를 생성하고 편집할 수 있는 기능.
- 메시지 내용, 제목, 이미지, 링크 등을 설정.
- 대상 그룹 설정
- 특정 사용자 그룹이나 디바이스 대상을 선택하여 메시지를 전송할 수 있는 기능.
- 메시지 예약
- 메시지를 특정 일자와 시간에 예약하여 전송할 수 있게.
- 동아리 지원마감일 3일 전에 메시지를 예약하는 등의 시나리오를 구현.
- 메시지 푸시 및 예약된 메시지 모니터링
- 메시지를 즉시 푸시하거나 예약된 메시지의 전송 상태를 모니터링할 수 있는 대시보드.
- 어떤 메시지가 전송되었고 얼마나 많은 사용자에게 전달되었는지 확인할 수 있게.
- 메시지 통계 및 분석(선택사항)
- 메시징 효과를 추적하기 위한 통계 및 분석
- 메시지의 열람률, 클릭률, 응답률 등을 모니터링.
- 메시지 템플릿 관리(선택사항)
- 미리 정의된 메시지 템플릿을 생성하고 관리.
- 메시지 재발송 및 수정
- 예약된 메시지를 재발송하거나 수정하는 기능.
- 예를 들어, 메시지 내용을 수정하고 재발송.
- 오류 처리 및 알림
- 메시지 전송 중에 발생한 오류를 처리.
references
https://firebase.google.com/docs/cloud-messaging/fcm-architecture?hl=ko
FCM 아키텍처 개요 | Firebase 클라우드 메시징
Google I/O 2023에서 Firebase의 주요 소식을 확인하세요. 자세히 알아보기 의견 보내기 FCM 아키텍처 개요 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. FCM은 메
firebase.google.com
https://firebase.google.com/docs/cloud-messaging/android/client?hl=ko
Android에서 Firebase 클라우드 메시징 클라이언트 앱 설정
Google I/O 2023에서 Firebase의 주요 소식을 확인하세요. 자세히 알아보기 의견 보내기 Android에서 Firebase 클라우드 메시징 클라이언트 앱 설정 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐
firebase.google.com
N2. Firebase Cloud Messaging 연결
N3. FCM Token 관리
- 관리자 페이지에서는 FCM 토큰을 관리하고 사용자 그룹을 설정
문제점?
메시지를 전송할 때 해당 메시지에 이미지를 추가하려면 유료 요금을 사용해야 됨.
메시징 동작과정
설치시 앱은 고유한 FCM 토큰을 생성 →
FCM 토큰은 앱 서버로 전송되어 등록 →
관리자 페이지에서 메시지를 생성, 특정 디바이스 또는 사용자 그룹에게 전송하도록 설정. →
서버는 FCM 서버에 메시지를 보내고, FCM 서버는 해당 토큰 또는 조건에 따라 메시지를 대상 디바이스에 전송. →
FCM 서버는 메시지를 대상 디바이스로 전달 →
디바이스는 FCM SDK를 사용하여 서버에서 수신한 메시지를 처리.
풀어서 설명
- 메시지 생성 및 전송 요청
- 관리자 페이지에서 생성한 메시지 정보(제목, 내용 등), 대상 사용자 그룹 및 전송 예약 시간이 관리자 페이지에서 서버로 전송
- 서버에서 FCM 연동
- 서버는 Firebase Cloud Messaging (FCM)와 연동하여 FCM 서버에 메시지를 보내도록 요청.
- 이때 FCM 서버와의 연결을 위해 서버에서 FCM SDK 사용.
- FCM 서버로 메시지 전달
- 서버는 관리자 페이지에서 생성한 메시지 내용과 대상 사용자 그룹 정보를 포함하여 FCM 서버에 메시지를 보냄.
- FCM 서버는 메시지를 저장하고 대상 사용자 그룹 또는 개별 디바이스 토큰에 전송할 예약된 시간 대기.
- 메시지 전송
- 예약된 시간에 FCM 서버는 설정된 대상 그룹 또는 디바이스에 메시지를 전송.
- 이때 FCM 서버는 각 대상 디바이스의 고유한 FCM 토큰을 사용하여 메시지를 전송.
- 디바이스에서 메시지 처리
- 안드로이드 앱에서 FCM SDK를 통해 메시지를 수신하고 처리.
- 메시지를 화면에 표시하거나, 앱 내에서 특정 작업을 수행하거나, 메시지를 무시하는 등의 작업을 수행.