Gradle发布AAB时CommitEdit$Committer执行失败报400错误
Android App Bundle发布触发400报错修复方案
报错现象
执行AAB发布任务时构建中断,核心日志如下:
> Task :app:publishRelease > Task :commitEditForComDotDigcoderDotTecsiDotHse FAILED > Committing changes > FAILURE: Build failed with an exception.
失败任务为:commitEditForComDotDigcoderDotTecsiDotHse,对应com.github.triplet.gradle.play.tasks.CommitEdit$Committer逻辑调用Google Play发布接口时返回400 Bad Request,请求地址为POST https://androidpublisher.googleapis.com/androidpublisher/v3/applications/com.digcoder.tecsi.hse/edits/14074052962661642881:commit,接口返回内容:
{ "code" : 400, "errors" : [ { "domain" : "global", "message" : "Only releases with status draft may be created on draft app.", "reason" : "badRequest" } ], "message" : "Only releases with status draft may be created on draft app.", "status" : "INVALID_ARGUMENT" }
根因说明
Google Play规则限制:处于草稿状态的应用,仅允许创建状态为draft(草稿)的发布版本。
触发这个报错的核心原因是:当前操作的应用在Google Play Console中还处于未完成首次上架的草稿状态,但Gradle Play Publisher插件的配置里,把本次发布的状态设为了非草稿模式(比如直接推送到生产/测试轨道正式发布),和平台规则冲突。
修复步骤
根据应用实际状态选对应方案即可:
- 首次上架的新应用:修改插件配置,将本次发布的状态设为
draft,先上传生成草稿版本,之后到Google Play Console后台完成上架资料填写、提审等流程,等应用正式通过审核脱离草稿状态后,再修改配置发布正式/测试版本即可。 - 已上架过的存量应用:先到Google Play Console检查对应包名的应用是否被误调整为草稿状态,或者本地Gradle配置里的包名是否填错,修正后重新执行发布任务即可。
内容的提问来源于stack exchange,提问作者Imen MK
相关产品推荐
相关产品推荐

