asc-builds-upload
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
Chineseasc Builds Upload
asc 构建包上传
Upload and distribute builds via App Store Connect. See workflow.md for the full end-to-end flow and error handling.
通过App Store Connect上传并分发构建包。完整的端到端流程及错误处理请查看workflow.md。
Commands
命令列表
Upload a build
上传构建包
bash
asc builds upload \
--app-id <APP_ID> \
--file MyApp.ipa \
--version 1.0.0 \
--build-number 42 \
[--platform ios|macos|tvos|visionos] # auto-detected from extension
[--wait] # poll until processing completesPlatform is auto-detected: → , everything else → .
.pkgmacosiosbash
asc builds upload \
--app-id <APP_ID> \
--file MyApp.ipa \
--version 1.0.0 \
--build-number 42 \
[--platform ios|macos|tvos|visionos] # auto-detected from extension
[--wait] # poll until processing completes平台会自动检测: 文件对应 ,其他文件默认对应 。
.pkgmacosiosPoll status
查询状态
bash
asc builds uploads get --upload-id <UPLOAD_ID>
asc builds uploads list --app-id <APP_ID>
asc builds uploads delete --upload-id <UPLOAD_ID>bash
asc builds uploads get --upload-id <UPLOAD_ID>
asc builds uploads list --app-id <APP_ID>
asc builds uploads delete --upload-id <UPLOAD_ID>TestFlight distribution
TestFlight 分发
bash
undefinedbash
undefinedAdd build to a beta group
Add build to a beta group
asc builds add-beta-group --build-id <BUILD_ID> --beta-group-id <GROUP_ID>
asc builds add-beta-group --build-id <BUILD_ID> --beta-group-id <GROUP_ID>
Remove build from a beta group
Remove build from a beta group
asc builds remove-beta-group --build-id <BUILD_ID> --beta-group-id <GROUP_ID>
asc builds remove-beta-group --build-id <BUILD_ID> --beta-group-id <GROUP_ID>
Set "What's New" notes (creates or updates the localization)
Set "What's New" notes (creates or updates the localization)
asc builds update-beta-notes
--build-id <BUILD_ID>
--locale en-US
--notes "Bug fixes and improvements."
--build-id <BUILD_ID>
--locale en-US
--notes "Bug fixes and improvements."
undefinedasc builds update-beta-notes
--build-id <BUILD_ID>
--locale en-US
--notes "Bug fixes and improvements."
--build-id <BUILD_ID>
--locale en-US
--notes "Bug fixes and improvements."
undefinedLink build to version
将构建包关联至版本
bash
asc versions set-build --version-id <VERSION_ID> --build-id <BUILD_ID>Required before submitting a version for App Store review.
bash
asc versions set-build --version-id <VERSION_ID> --build-id <BUILD_ID>这是提交版本至App Store审核前的必要步骤。
Resolve App ID
获取App ID
See project-context.md — check before asking the user or running .
.asc/project.jsonasc apps list请查看project-context.md — 在询问用户或执行前,先检查文件。
asc apps list.asc/project.jsonTypical Workflow
典型工作流
bash
APP_ID=$(cat .asc/project.json 2>/dev/null | jq -r '.appId // empty')bash
APP_ID=$(cat .asc/project.json 2>/dev/null | jq -r '.appId // empty')If empty: ask user or run asc apps list | jq -r '.data[0].id'
asc apps list | jq -r '.data[0].id'If empty: ask user or run asc apps list | jq -r '.data[0].id'
asc apps list | jq -r '.data[0].id'1. Upload and wait
1. Upload and wait
asc builds upload --app-id "$APP_ID" --file MyApp.ipa
--version 1.2.0 --build-number 55 --wait
--version 1.2.0 --build-number 55 --wait
asc builds upload --app-id "$APP_ID" --file MyApp.ipa
--version 1.2.0 --build-number 55 --wait
--version 1.2.0 --build-number 55 --wait
2. Get the processed build ID
2. Get the processed build ID
BUILD_ID=$(asc builds list --app-id $APP_ID | jq -r '.data[0].id')
BUILD_ID=$(asc builds list --app-id $APP_ID | jq -r '.data[0].id')
3. Distribute to beta group
3. Distribute to beta group
asc builds add-beta-group --build-id $BUILD_ID --beta-group-id $GROUP_ID
asc builds add-beta-group --build-id $BUILD_ID --beta-group-id $GROUP_ID
4. Set notes
4. Set notes
asc builds update-beta-notes --build-id $BUILD_ID --locale en-US --notes "..."
asc builds update-beta-notes --build-id $BUILD_ID --locale en-US --notes "..."
5. Link to version and submit
5. Link to version and submit
asc versions set-build --version-id $VERSION_ID --build-id $BUILD_ID
asc versions submit --version-id $VERSION_ID
undefinedasc versions set-build --version-id $VERSION_ID --build-id $BUILD_ID
asc versions submit --version-id $VERSION_ID
undefinedCAEOAS Affordances
CAEOAS 便捷操作
Upload responses include with ready-to-run follow-up commands:
affordancesjson
{
"data": [{
"affordances": {
"checkStatus": "asc builds uploads get --upload-id abc123",
"listBuilds": "asc builds list --app-id 123456789"
},
"state": "COMPLETE"
}]
}listBuildsstate == "COMPLETE"上传响应中包含字段,提供可直接运行的后续命令:
affordancesjson
{
"data": [{
"affordances": {
"checkStatus": "asc builds uploads get --upload-id abc123",
"listBuilds": "asc builds list --app-id 123456789"
},
"state": "COMPLETE"
}]
}仅当时才会显示。使用便捷操作无需记忆ID即可完成流程。
state == "COMPLETE"listBuildsReference
参考资料
See workflow.md for:
- Full 5-step upload API flow internals
- Build upload states and polling logic
- Error scenarios and troubleshooting
如需了解以下内容,请查看workflow.md:
- 完整的5步上传API流程细节
- 构建包上传状态与轮询逻辑
- 错误场景与故障排查