16 · Firebase Cloud Messaging (FCM)
定位:Google Firebase 的推送通知服务系统化学习资料,为运营自动化批量推送做技术基础
目标读者:后端工程师、运营副组长(做自动化规划)、SRE
业务背景:iGaming 公司有多个平台(每个是独立的 Firebase 项目),日常要给每个平台批量推送优惠码通知。本手册的终极目标是让一个脚本一次性发送所有平台的所有用户
最后更新:2026-04-11
为什么要深入 Firebase?
我们公司的运营副组长每天要做 5 次推送(11am / 3pm / 7pm / 9pm / 12am 印尼时间),每次要一个平台一个平台地在 Firebase Console 上手动配置定时任务。这种做法的痛点:
- 重复劳动:平台 N 个 → 人工操作 N 次
- 易出错:图片张冠李戴、文案复制漏、时间点配错
- 不可扩展:平台一多就崩盘
- 无观测:发了没发、成功率多少都看不到
解决方案:用 Firebase Admin SDK / HTTP v1 API 做批量发送自动化。
本手册从 FCM 原理讲起,逐步深入到多平台多 Firebase 项目并行批量推送的实战架构。
文档索引
基础 · 核心原理
进阶 · 批量与性能
| # |
文档 |
覆盖内容 |
| 04 |
批量发送与广播模式 |
sendEach / sendEachForMulticast / Topic 广播 / Condition 条件目标 / 性能对比 |
| 05 |
消息载荷与平台定制 |
notification vs data / Android channel / iOS APNS / Web Push |
| 06 |
错误处理与 Token 生命周期 |
错误码清单、失败 token 清理、重试策略、死信处理 |
实战 · 自动化与架构
| # |
文档 |
覆盖内容 |
| 07 |
定时与调度方案 |
Cloud Scheduler / Cloud Functions / cron / GitHub Actions / 方案对比矩阵 |
| 08 |
iGaming 多平台批量推送实战 |
多 Firebase 项目并行架构、配置文件、优惠码动态替换、错误隔离、可观测性 |
阅读路径推荐
🎯 只想搞懂怎么用 API 发一条推送
- 01 核心概念 建立心智模型
- 02 HTTP v1 API 与认证 学会认证和最简 curl 调用
- 03 Admin SDK 看代码示例
🚀 要做多平台批量推送自动化(用户目标)
- 读完上面三份
- 04 批量发送 选 Token vs Topic
- 06 错误处理 处理失败 token
- 08 iGaming 实战 直接抄架构
⏰ 只关心定时调度怎么选
- 直接读 07 定时与调度方案 的对比矩阵
- 按推荐方案照做
与其它文档的关系
专有名词速查
| 术语 |
英文 |
含义 |
| FCM |
Firebase Cloud Messaging |
Firebase 的推送通知服务 |
| Token |
Registration Token |
设备注册令牌,发推送用的定位标识 |
| Topic |
— |
主题订阅,用于广播 |
| APNS |
Apple Push Notification Service |
苹果推送服务(iOS 推送底层走它) |
| Admin SDK |
Firebase Admin SDK |
服务端 SDK(Node/Python/Go/Java 等) |
| Service Account |
— |
GCP 服务账号,API 认证用 |
| HTTP v1 |
— |
当前推荐的 FCM API 版本(Legacy 已废弃) |
| Multicast |
— |
同一内容发给多个 token 的批量模式 |
状态
- v0.1 · 2026-04-11 初始化 · 框架搭好,01-08 八份文档陆续落地中