You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter Firebase iOS真机(TestFlight)FCM Token生成异常问题

解决方案:iOS TestFlight环境无法生成FCM Token问题

检查APNS证书配置

  • 确认Apple开发者后台的推送证书是生产环境(Production)版本,TestFlight属于生产环境,不能使用开发环境证书。
  • 核对Firebase控制台是否正确上传了生产环境APNS证书,且证书未过期、私钥与证书匹配。

验证Xcode Capabilities配置

  • 打开Xcode对应Target的Capabilities面板,确保Push Notifications已启用,同时Background Modes下的Remote notifications选项已勾选。
  • 检查Info.plist中是否添加FirebaseAppDelegateProxyEnabled并设置为YES,避免APNS与FCM的代理逻辑冲突。

代码层面排查

  • 请求通知权限时,确保生产环境的参数设置正确:
    FirebaseMessaging.instance.requestPermission(
      alert: true,
      badge: true,
      sound: true,
      provisional: false, // 生产环境必须设为false
    );
    
  • 监听Token获取失败的回调,打印具体错误信息定位问题:
    FirebaseMessaging.instance.onTokenRefresh.listen((token) {
      print('FCM Token: $token');
    }).onError((error) {
      print('Token获取失败详情: $error');
    });
    

TestFlight专属配置检查

  • 确认TestFlight构建的Bundle ID与Firebase控制台注册的iOS应用Bundle ID完全一致(包括大小写)。
  • 检查Apple开发者后台中,该Bundle ID的Push Notifications服务状态为“Enabled”,生产环境推送权限已激活。

设备端验证

  • 确保iOS设备已登录有效Apple ID,且在系统设置→通知→对应应用中,已开启通知权限。
  • 尝试重启设备后重新安装TestFlight版本,排除临时系统缓存问题。

内容的提问来源于stack exchange,提问作者Prakash Kaliannan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 07:42:04