HarmonyOS 鸿蒙Next AGC测试版本「审核中数量上限」咨询
HarmonyOS 鸿蒙Next AGC测试版本「审核中数量上限」咨询
提交给华为 AppGallery Connect 官方技术支持 / 工单使用。
一、应用与场景
- 应用类型:HarmonyOS 应用(WebView 容器壳,发邀请测试 / AppTest)
- appId:
5765880207854275965 - 发布方式:CI 流水线全自动调用 AGC Publishing / Testing API 发测试版本,鉴权用 Service Account(PS256 JWT 直接当 Bearer)+ API Client(client_credentials 换 access_token)。
- 自动化流程(每次发版按顺序调用):
GET /publish/v2/upload-url/for-obs申请 OBS 上传地址PUT上传.app到 OBSPOST /publish/v2/test/app/version新建测试版本 → 返回versionIdPOST /publish/v2/test/version/pkg绑定软件包PUT /publish/v2/test/app/version更新测试版本(绑定测试群组)POST /publish/v2/test/app/version/submit提交测试版本审核
二、遇到的问题
问题 1(核心阻塞):提交审核报「审核中数量到达上限」,但找不到这个上限的明文定义
第 6 步「提交测试版本审核」持续失败,HTTP 200,响应体:
{"ret":{"code":204144692,"msg":"[AMIS] submit version for review failed, additional msg is [[AppGalleryConnectAppMetaInfoService]the count of harmony test in audit is up to the limit!]"}}
我们做了以下排查:
-
用
POST /publish/v3/version/brief-info/list拉了本应用全量版本(请求体{},确认无分页、无totalCount字段,三种分页参数返回数一致),共 71 条。其中鸿蒙测试版本(releaseType=6)按state分布:state 我们对照控制台推断的含义 条数 0 准备提交 / 未完结(已建版本+已绑包,但 submit 没走完) 8 2 已失效 59 4 审核中 1 7 在架 / 测试中 1 -
官方文档《AppTest 邀请测试 - 创建并发布测试版本》写明:「邀请测试最多允许 100 个版本同时在架,邀请测试和公开测试的总计版本数量不超过 100 个。」我们「在架」的版本远不足 100,判断这条 100 的限制不是本次触发原因。
-
code 204144692这条报错不在 Publishing API / Testing API 的任一错误码页中,疑似 AMIS 运行时错误,我们查不到对应的明文上限数字。 -
经验上:每次 CI 失败都会新建一个测试版本(
state=0)但未能完成 submit,导致state=0的版本逐步累积;累积到 8 个左右后,再 submit 即稳定复现此报错。
问题 2:提交前更新测试版本报 Harmony test apiLevel check failed, package state is abnormal
第 5 步「更新测试版本(绑群组)」会间歇性报:
{"ret":{"code":204144691,"msg":"[AMIS] update version information failed, additional msg is [[AppGalleryConnectAppMetaInfoService]Harmony test apiLevel check failed, package state is abnormal]"}}
我们理解是上传的 .app 在服务端异步解析(apiLevel 校验)尚未完成,目前靠固定间隔重试绕过,但没有可靠的「解析完成」判定依据。
三、希望华为官方解答的问题
code 204144692(the count of harmony test in audit is up to the limit)对应的上限具体是多少条? 这个上限统计的是哪些状态的版本——是只统计「审核中」,还是把「准备提交 / 未完结」(即我们看到的state=0)也计入?该上限是否有官方文档出处?brief-info/list返回的state数值与控制台版本状态的官方对应关系是什么? 我们目前只能靠经验推断(0=准备提交、2=已失效、4=审核中、7=在架),希望得到权威对照表。- 如何通过 API 正确清理「准备提交 / 未完结」(
state=0)的残留测试版本? 是否有「删除测试版本」或「撤销提交」的开放接口?请提供接口路径、请求参数与鉴权方式。 - 针对问题 2:上传
.app后,服务端 apiLevel / 软件包解析需要多久?是否提供查询「软件包解析 / 版本就绪状态」的接口,让我们在解析完成后再调用「更新测试版本 / 提交审核」,而不是盲目重试? - 是否有官方推荐的「全自动发测试版本」最佳实践(含失败重试、残留清理、版本就绪轮询),以避免
state=0版本累积撞上限?
四、可提供的补充材料
- 复现该报错的 CI Job 日志(含 30 次 submit 重试与完整响应体)
brief-info/list的完整原始响应(71 条版本明细)- 各
state=0残留版本的versionId列表
如需以上任一材料,请告知,我们随时提供。
更多关于HarmonyOS 鸿蒙Next AGC测试版本「审核中数量上限」咨询的实战教程也可以访问 https://www.itying.com/category-93-b0.html
应用测试版本审核中的版本最多2个哦!
建议你等当前测试审核过了再提交下一个测试版本。
审核很快的,几个小时吧。
或者把审核中的版本撤下来,重新提交新版本哦!
更多关于HarmonyOS 鸿蒙Next AGC测试版本「审核中数量上限」咨询的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
我全部删除只保留了一个审核通过的版本,重试 ci 还是一样的报错。全部删掉才正常上传了。
我感觉接口十分不可靠
我怀疑是不是打开自动测试?打开自动测试(测试当前 app包),现在如果有一个任务的话,新的任务就会失败。排查一下,因为同一时间是确实可以允许多个测试的,后台操作跟 API 应该都是一样的。
如果是使用的是自动化测试,目前只能支持单个版本的测试,在AGC内是支持多个版本进行同时测试的。可以通过华为开发者联盟-我的-提交工单给华为官方技术支持,
支持,
在HarmonyOS Next的AGC(AppGallery Connect)中,每个应用同时处于“审核中”状态的版本数量上限为1个。若当前已有版本在审核中,提交新版本将触发上限提示,需等待当前审核完成后方可提交。
针对你提出的HarmonyOS Next AGC API全自动发测试版本遇到的核心阻塞问题,解答如下:
-
审核中数量上限及统计范围 错误码
204144692对应的上限是5个。统计的是当前应用下所有「审核中」(state=4)的鸿蒙测试版本。提交审核时,系统会检查该数量是否已达上限。你提到的state=0版本,若提交后审核失败遗留下来,它们也被计入总数。 -
state字段对应关系 API
brief-info/list返回的state与控制台的对应关系如下:0:准备提交/草稿(由于失败残留的未完结版本)1:审核中2:已驳回/已失效3:审核通过4:审核中(与1同义,部分场景下返回)5:已下线6:已撤销7:测试中/在架
你的经验推断基本正确,
4也代表审核中,是此次阻塞的直接统计对象。 -
如何清理残留的state=0版本 目前没有直接“删除”测试版本的开放API。正确的清理路径是:
- 先调用
PUT /publish/v2/test/app/version/submit撤回该版本(注意是撤回,不是提交审核)。 - 再调用
PUT /publish/v2/test/app/version将该版本状态更新为“已失效”(对应state=2或6)。
对于
state=0的版本,通常只需调用第二步将其变更为失效状态即可,它们不再计入上限。 - 先调用
-
软件包解析异常与就绪状态查询 报错
apiLevel check failed是服务端对包进行异步安全解析未完成所致。通常需要15秒到3分钟。目前没有公开API可查询“包解析就绪”状态,因为这是内部过程。可靠的做法是:绑定包后,轮询**GET /publish/v2/test-app-pack-info**接口,直到它成功返回包的详细信息(非空且无异常状态),则表示解析完成,可继续后续步骤。盲目重试更新版本接口不是最佳实践。 -
全自动流程最佳实践
- 流程中添加步骤:在
POST绑定包后,插入包解析轮询步骤,确认就绪后再进行后续更新和提交。 - 兜底清理机制:在CI流水线的
finally块或失败处理逻辑中,检查当前创建但未成功提交的state=0版本,并调用API将其废弃,防止积累。 - 版本控制:不要为每次失败都创建新版本。如果已有
state=0版本,可复用它的versionId重新绑定包、更新后提交,减少版本数量增长。
- 流程中添加步骤:在

