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

使用Firebase App Distribution分发AAB时遇“Precondition check failed”错误

问题分析与解决方案

1. 先解决firebase.json的配置错误

错误日志第一行提示:

Object "" in "firebase.json" has unknown property: {"additionalProperty":"flutter"}

这说明你的firebase.json根节点存在Firebase CLI不识别的flutter字段。解决方法:

  • 打开项目根目录的firebase.json文件
  • 删除根节点下的"flutter"配置项(Flutter相关配置需通过flutterfire configure等工具生成,不应直接写在firebase.json根节点)
  • 保存文件后重新执行分发命令

2. 修复AAB分发的400预检查失败错误

核心错误是failed to determine AAB info. HTTP Error: 400, Precondition check failed.,结合你的Flutter flavor场景,主要排查以下几点:

(1)修正--app参数的值

你当前命令中--app <PROJECT_ID>是错误的:

  • firebase appdistribution:distribute的--app参数需要传入Firebase App ID(格式类似1:1234567890:android:abcdef1234567890),而非Firebase项目ID
  • 可在Firebase控制台对应App的详情页找到该ID,替换命令中的<PROJECT_ID>

(2)确保Flavor对应的包名已在Firebase注册

使用Flutter flavor时,不同环境可能有不同包名(比如staging环境包名可能是com.yourapp.staging):

  • 检查staging flavor的build.gradle(或build.gradle.kts)中配置的applicationId
  • 登录Firebase控制台,确认是否已注册该包名的Android App;未注册则需新增对应App并完成配置

(3)验证AAB的签名配置

App Distribution要求上传的AAB签名信息与Firebase控制台配置一致:

  • 检查staging flavor的签名配置,确认使用的签名密钥正确
  • 登录Firebase控制台,进入对应App的「设置」→「应用签名」,确保已添加该签名密钥的SHA-1和SHA-256指纹(若关联Google Play应用签名,需同步对应信息)

(4)确认用户权限

确保当前登录Firebase CLI的账号拥有该项目的App Distribution编辑或管理员权限:

  • 执行firebase login确认登录账号正确
  • 在Firebase控制台的「项目设置」→「用户和权限」中检查账号权限

修正后的示例命令

firebase appdistribution:distribute build/app/outputs/bundle/stagingRelease/app-staging-release.aab --app 1:1234567890:android:abcdef1234567890 --groups internal --debug

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 18:35:05