핵심 요약
푸시의 안정성은 디바이스 토큰 관리에 달렸다. 기기마다 FCM 토큰을 받아 서버에 저장하고, 토큰은 재설치·갱신 시 바뀌므로 갱신 콜백에서 서버를 업데이트해야 한다. 권한 요청 타이밍, 포그라운드 표시 처리도 흔히 빠진다.
1. 흐름
- 권한 요청(iOS 필수) → 토큰 발급 → 서버에 사용자-토큰 저장
- 토큰 갱신 리스너에서 서버 갱신
- 서버는 사용자→토큰들로 발송, 실패(무효 토큰)는 정리
2. 표시 처리
| 상태 | 동작 |
|---|---|
| 백그라운드 | OS가 알림 자동 표시 |
| 포그라운드 | 직접 로컬 알림으로 표시 |
| 탭 | 딥링크로 해당 화면 이동 |
3. 함정
- 무효 토큰을 안 지우면 발송 실패가 쌓인다 — 응답 코드로 정리
- 권한을 앱 첫 진입에 무턱대고 요청하면 거절률↑ — 맥락 있을 때 요청
- iOS는 APNs 키/인증서 설정이 별도로 필요
자주 묻는 질문
어떤 기기는 푸시가 안 와요.
대개 토큰이 갱신됐는데 서버가 옛 토큰을 들고 있는 경우입니다. 토큰 갱신 리스너에서 서버를 업데이트하고, 발송 실패한 무효 토큰은 삭제하세요.
앱을 켜 둔 상태에선 알림이 안 떠요.
포그라운드에선 OS가 자동 표시하지 않습니다. 메시지를 받아 직접 로컬 알림으로 띄우도록 처리해야 합니다.

댓글 0