App Store上架审核卡住这件事,我先给你一个心理预期:大多数“卡住”不是真的被卡死了,而是状态机没有按你预期的速度往前走,或者你少看了一个关键的信号。 我做过多年iOS开发和移动端上线,见过凌晨三点盯着“等待审核”反复刷新的同事,也见过因为审核状态卡了一个多月、硬生生错过产品发布窗口的团队。这篇文章不聊虚的,直接拆解审核卡住的各种真实场景,告诉你问题可能出在哪、怎么判断、怎么排查、怎么催,以及下一版提审前怎么从源头把它按住。
1. 审核状态机拆解——你的App到底卡在哪一道闸口
1.1 从“已提交”到“可供销售”的完整状态流转
App Store Connect后台的状态其实就那么几个:准备提交、等待审核、正在审核、等待开发人员发布、可供销售、被拒绝、元数据被拒、开发人员已移除。很多开发者的困惑在于“卡住了”这个描述太模糊,实际上不同状态对应的问题完全不同。
我先按正常流程把状态流转理一遍。你点“提交审核”之后,App的版本状态会进入“等待审核”(Waiting for Review),这是苹果内部的初审队列。通常几小时到一两天内会变成“正在审核”(In Review),进入这个状态说明已经有审核员接手,开始看你的二进制、元数据、隐私声明、截图,甚至会在你的App里点来点去。
如果一切顺利,状态会变成“等待开发人员发布”(Pending Developer Release),这个状态是专门留给开启了“手动发布”的开发者,苹果审核已经通过,但需要你自己点“发布”。没开手动发布的,则直接跳到“可供销售”(Ready for Sale)。一旦出现红字“被拒绝”(Rejected)或者黄色的“元数据被拒”(Metadata Rejected),说明审核员给出了修改意见,你得处理后重新提交。
这里有一个常见误区:很多人把“等待审核”当成一个新提交的App必然经过的步骤,但实际上如果你之前提交过被拒,修完再提交,它也会回到“等待审核”队列,而且这个队列是有权重的。 后面我会细说为什么有的App第二天就进“正在审核”,有的等了一周都没动静。
1.2 “等待审核”不等于被遗忘——队列机制解读
苹果官方没有公布过审核队列的具体调度逻辑,但从我多年观察和团队反复实测的经验来看,几个因素会明显影响排队时间:
- 首次提审的App通常会比更新版走得更快,因为新App的审核优先级更高,我记得有几次首版App十几小时就进了“正在审核”。
- 周五下午到周日提交的版本,等待时间大概率会拉长。苹果审核团队也有排班,你周四晚上提的和周六提的,体感完全两回事。
- 节假日前后是重灾区,美国假日、圣诞新年、圣诞后到元旦这段时间,整个审核周期能慢到让你怀疑人生。
- 你的账号如果近期被拒过好几次,再提交的版本在人工审核队列里的优先级可能也会受影响,这个没有官方依据,但多个开发者社区里都有类似的反馈。
所以在判断“是不是卡住了”之前,先算算你提交了多少个小时、提交时间是周几、最近有没有撞上苹果的假期。如果你周二上午提交,到周三下午还在“等待审核”,这完全不叫卡;但如果你已经卡满5个工作日还没动静,那就值得认真排查了。
1.3 容易被误读的“正在审核”状态细节
“正在审核”这个状态是最容易被误读的。很多团队看到状态变成In Review,觉得马上就要上架了,结果一卡又是好多天,然后开始各种烦躁。
实际上,“正在审核”内部有一套可见和不可见的流程。从我们开发者视角能观察到的变化是:进入In Review之后,如果发现你的App需要账号密码登录,审核员可能会在“审核信息”(App Review Information)里的“备注”字段没有找到有效凭证,这时候审核状态就会一直停在In Review,但不给你发拒信,也不更新状态。这种情况我遇到过不止一次。
还有一种情况是审核员在测试过程中发现了疑似崩溃或卡死问题,他们在复现过程中,状态也会持续停在“正在审核”。如果问题定位需要时间,他们会跑一些自动化测试工具,这时候后台不会给你任何中间反馈,你只能干等。
这里要记住一个经验:“正在审核”停留超过48小时,不一定是坏事,但一定要每天刷新后台、查邮件,防止苹果给你发了一个需要立即响应的信息而你错过了。 有的审核问题如果72小时内不回应,会被直接当作放弃处理,状态退回。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 审核卡住的四类典型场景与根因定位
2.1 长期停留在“等待审核”的常见原因
第一类场景,也是最常见的焦虑来源:提交之后一周,状态纹丝不动,始终停在“等待审核”。这时候大概率不是你的App有什么问题,而是下面几个原因之一。
第一个原因是这一周恰好撞上了苹果的集中假期。比如每年12月中下旬到次年1月初,整个欧美都在放假,审核队列积压严重,你提交的版本排在后头,自然不动。这种“卡住”是环境性的,除了等,没有别的办法。
第二个原因是**你的版本号或者构建版
