Flutter中Firebase Phone Auth iOS模拟器正常但真机触发超时问题求助
iOS真机Firebase Phone Auth无响应触发超时的排查方案
检查Apple开发者账号配置
- 确认已开启Sign In with Apple权限(Firebase Phone Auth依赖该配置)
- 保证App的Bundle ID与Firebase控制台、Apple后台完全一致,无拼写错误
- 下载并安装最新的Provisioning Profile,确保包含Push Notification权限
验证Push Notification配置
- iOS真机的Phone Auth依赖APNs推送自动获取验证码,需确认:
- Firebase控制台已上传对应环境(开发/生产)的APNs证书
- Info.plist中添加
FirebaseAppDelegateProxyEnabled并设置为YES - 真机已允许App发送通知(前往「设置→通知→对应App」开启权限)
- iOS真机的Phone Auth依赖APNs推送自动获取验证码,需确认:
检查Firebase Auth区域配置
- 登录Firebase控制台,进入「Auth→登录方法→电话登录」,添加App所在区域(如中国大陆需单独配置)
- 确认电话认证的API密钥未被限制IP或区域
代码细节校验
verifyPhoneNumber方法中手机号需带正确国家码(如+8613xxxxxxxxx)- 真机测试避免使用虚拟号码或VoIP号码,Firebase对这类号码支持有限
- 确认AppDelegate.swift中Firebase初始化代码正确,
application:didRegisterForRemoteNotificationsWithDeviceToken:方法已将token传递给Firebase
匹配测试环境与证书
- Debug模式运行时用开发APNs证书,AdHoc/App Store版本用生产APNs证书
- 清理Xcode缓存,删除真机旧App后重新编译安装
内容的提问来源于stack exchange,提问作者Destrankir
相关产品推荐
相关产品推荐

