Push Notification在iOS端不工作但Android端运行正常该如何排查解决
Firebase iOS 推送通知异常排查方案(安卓端运行正常场景)
- 校验APNs认证密钥配置:确认Firebase控制台上传的Auth Key对应的Bundle ID与iOS项目Bundle ID完全匹配,同时检查该密钥在Apple Developer后台的Push Notifications权限已开启,且密钥未过期、未被撤销。
- 核对Xcode项目配置:
- 打开Xcode项目的「Signing & Capabilities」标签页,确认已添加Push Notifications能力,同时添加Background Modes能力并勾选Remote notifications选项
- 确认当前编译使用的Provisioning Profile已包含Push Notifications服务权限,开发/生产环境的Profile需与推送测试环境完全对应
- 验证Firebase初始化逻辑:确认iOS端
AppDelegate中已正确实现application:didRegisterForRemoteNotificationsWithDeviceToken:方法,且APNs Token已成功上传至Firebase,可添加本地日志确认Token上报无报错 - 检查推送环境匹配度:若为开发环境测试推送,需在Firebase控制台发送推送时选择APNs Sandbox(开发环境),生产环境推送需对应生产环境的密钥配置,两者不可混用
- 确认通知权限已开启:确认App首次启动时已向用户申请通知权限且用户已同意,可在iOS系统设置的对应App权限页,检查通知权限是否处于开启状态
- 校验前台通知展示逻辑:若App在前台运行时收不到通知,确认已实现
UNUserNotificationCenterDelegate的userNotificationCenter:willPresentNotification:withCompletionHandler:方法,主动触发前台通知展示
内容的提问来源于stack exchange,提问作者Manthan Shukla
相关产品推荐
相关产品推荐

