Firebase消息服务异常:获取FIS认证令牌失败求助
Firebase Installations Service 不可用导致推送失效的排查方案
错误日志
E/FirebaseInstanceId( 8475): Failed to get FIS auth token
E/FirebaseInstanceId( 8475): java.util.concurrent.ExecutionException: com.google.firebase.installations.FirebaseInstallationsException: Firebase Installations Service is unavailable. Please try again later.
已尝试操作
- 执行
flutter clean后重新构建项目 - 重新下载
google-services.json文件 - 更换Firebase依赖版本
进一步排查步骤
1. 检查Firebase控制台配置
- 确认项目的Firebase Installations API已启用:进入Firebase控制台 → 项目设置 → 服务,找到Firebase Installations并确认状态为启用
- 核对Google Cloud控制台的API密钥:进入API和服务 → 凭据,检查对应密钥的限制规则,避免设置过于严格的IP或应用包名拦截
2. 网络与权限校验
- 确保AndroidManifest.xml中添加了必要网络权限:
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> - 测试设备/服务器是否能正常访问
firebaseinstallations.googleapis.com,避免域名被防火墙、代理拦截
3. 包名与签名匹配检查
- 确认
google-services.json中的package_name与应用实际包名完全一致 - 核对Firebase控制台中应用的签名证书指纹:发布版本必须使用正式签名的SHA-1/SHA-256,而非调试版指纹
4. 统一Firebase依赖版本
- 确保所有Firebase相关依赖版本一致,比如
firebase_core、firebase_messaging、firebase_installations需使用兼容版本,避免版本冲突 - 检查项目级和模块级
build.gradle中,Google服务插件版本与Firebase依赖版本的兼容性
5. 清除应用数据缓存
- 测试设备:进入应用设置 → 存储 → 清除数据和缓存,重启应用重试
- 线上用户:可引导用户清除应用缓存,必要时重新登录(若涉及用户认证)
6. 排查Firebase服务状态
- 查看Firebase官方状态页面,确认Firebase Installations服务是否存在全局故障(概率较低,但需排除)
内容的提问来源于stack exchange,提问作者Noman Ijaz
相关产品推荐
相关产品推荐

