推送渠道配置
Admin 的“通知中心 → 推送渠道”按应用和环境管理离线推送。页面不会要求管理员直接输入设备 Token,也不会回显服务器凭据;测试推送只能选择当前 App 已注册的安全设备摘要。
支持范围
Google 和 China Android 变体互斥。Google 包不能包含国内厂商 SDK,China 包不能依赖 Firebase/GMS;不支持任何已编译通道的设备只使用站内消息。
页面操作顺序
- 在页面顶部选择 App 和
development、staging或production环境。 - 点击标题右侧的问号图标,按 APNs、FCM、华为 Android、荣耀、小米、OPPO、vivo、魅族、Harmony 的 Tab 查看申请步骤、字段来源、风险提示和官方资料。
- 创建草稿并填写强类型公开字段。秘密字段通过独立的只写入口保存。
- 执行预检,修复包名、Bundle ID、环境、签名身份或凭据解析错误。
- 预检状态为 ready 后激活渠道;需要更换凭据时使用“轮换”,不要把旧秘密复制到普通配置字段。
- 从已注册设备列表选择一台匹配 Provider 的设备发送测试通知,再查看投递结果。
各渠道需要准备的字段
问号指引中的链接只指向 Apple、Firebase、华为、荣耀、小米、OPPO、vivo 和魅族官方域名。厂商控制台可能调整入口;正式申请时仍应以页面内当前官方链接和对应控制台显示为准。
状态和安全语义
draft:配置可以编辑,但不能用于发送。- 预检通过:服务器确认必填字段、密钥格式和已知身份关系可解析;它不代表厂商账号已经审批完成。
active:在全局 Push 开关、用户订阅、设备和消息有效期也满足时可以发送。faulted:连续鉴权或配置错误使渠道进入故障状态,修复并重新预检后才能恢复。disabled:停止创建该渠道的新厂商投递;站内消息不受影响。
凭据按 tenant、App、环境和 Provider 隔离,并带密钥版本与指纹。日志、截图、Fixture、指标和 Admin 响应都不应包含私钥、Service Account、Client Secret、Master Secret 或设备 Token。
Android 构建门禁
使用 AK_ANDROID_PUSH_VARIANT=google|china 选择构建变体。生产构建还必须注入与 App 身份匹配的公开客户端配置,并通过最终 APK/AAB 依赖与 marker 检查。生成配置是被忽略的临时产物,服务器 Secret 永远不能进入安装包。
所有 SDK 都必须在用户完成隐私同意并主动开启 Push 后才初始化。Firebase 自动初始化需要关闭;不能证明延迟初始化和首次联网行为合规的厂商渠道应保持禁用。
上线前检查
- 厂商账号、推送权益、消息分类和频控已经审批。
- Package Name、Bundle ID、Bundle Name、签名指纹和发布环境与最终安装包一致。
- SDK 版本、校验和、许可证和隐私清单已经固定并评审。
- 对应渠道已完成前台、后台、被终止、离线恢复、Token 更新、重装、账号切换和双语通知点击真机矩阵。