用途:把已批准的发布计划推进到 App Store 审核,覆盖暂存元数据并附加构建、发布 IPA 或本地构建、提交已准备版本、组装多条目审核提交。Game Center 条目准备也在此处理;其他阻塞诊断与审核恢复交给 asc-submission-health。
前置条件:解析 APP_ID、版本号、必要时 VERSION_ID 与 BUILD_ID;用 asc auth login 或 ASC_* 环境变量配置认证;确认目标平台(默认 IOS);元数据工作流将规范元数据放在 ./metadata;变更类高层命令前先 dry run,提交需 --confirm。
选择发布通道:asc release stage 暂存元数据并附加已有构建;asc review submit 提交已准备版本;asc publish appstore 上传 IPA 或本地构建后可选提交;带 IAP、订阅或 Game Center 版本条目时用更底层的 asc review submission 命令。一旦创建审核提交,不要混用通道。
就绪门禁:对已附加目标构建的版本运行 asc validate --app "APP_ID" --version "1.2.3" --platform IOS --output table,警告需阻断时加 --strict。含 IAP 或订阅时先做产品检查;Game Center 条目只完成 Prepare every item。
暂存已有构建:asc release stage 会校验构建归属、应用或复制元数据、附加构建并验证,不创建审核提交。示例:asc release stage --app "APP_ID" --version "1.2.3" --build-id "BUILD_ID" --metadata-dir "./metadata" --dry-run --output table,确认后把 --dry-run 换成 --confirm。--metadata-dir 指向含 app-info/ 与 version/<version>/ 的根目录;可用 --copy-metadata-from "1.2.2" 沿用本地化元数据;--strict-validate 让警告失败;含删除时需 --allow-deletes;路由覆盖用 --routing-coverage-file "./coverage.geojson"。结构化输出按步骤名匹配,不按数组位置。
提交已准备版本:asc review submit --app "APP_ID" --version "1.2.3" --build-id "BUILD_ID" --dry-run --output table,确认后加 --confirm。已知版本 ID 用 --version-id;可用 --build-number "45" 跳过构建 ID 查找,刚上传后优先用它而非 --latest;--wait 等待处理完成。
上传或构建后发布:asc publish appstore --app "APP_ID" --ipa "./App.ipa" --version "1.2.3" --submit --dry-run --output table,确认后加 --wait --confirm。本地构建用 --workspace 或 --project 配 --scheme 代替 --ipa;--metadata-dir 可在确保版本后应用规范元数据;仅上传附加时省略 --submit。
多条目提交:需随版本发布带版本的 IAP、订阅、订阅组或 Game Center 条目时,阅读 references/multi-item-submissions.md,只添加用户已确认并检查过的条目。
提交后交接:报告应用、版本、平台、构建与提交 ID,运行的通道及是否完成,授权下的变更,以及监控提交的确切命令。监控、取消、拒绝诊断或重试决策交给 asc-submission-health。
限制与护栏:不要使用已移除的 submit-preflight、submit-create 或 release-run 快捷方式;dry run 计划与请求发布不符前不要加 --confirm;版本已有审核提交时不要创建第二个;验证失败不要变成部分发布,应在失败门禁处停止;自动化包装时数据走 stdout、诊断走 stderr。