如何仅通过Xcode Cloud自动添加TestFlight内测测试说明?
纯Xcode Cloud实现TestFlight测试说明自动添加方案
可行方案:Post-build脚本结合App Store Connect CLI
1. 配置工作流环境变量
在Xcode Cloud工作流设置中添加以下环境变量:
TEST_FLIGHT_NOTES:可选,手动设置固定测试说明;留空则自动从Git提交记录生成APP_STORE_CONNECT_USERNAME:你的Apple ID邮箱APP_STORE_CONNECT_APP_SPECIFIC_PASSWORD:在Apple ID管理页面生成的App Store Connect应用专用密码
2. 添加Post-build脚本阶段
在工作流的Post-build阶段插入以下脚本(确保在Xcode Cloud完成二进制上传后执行):
# 提取Xcode Cloud内置环境变量中的应用信息 BUNDLE_ID="$XCODE_PRODUCT_BUNDLE_IDENTIFIER" APP_VERSION="$XCODE_PRODUCT_VERSION" BUILD_NUMBER="$XCODE_BUILD_NUMBER" # 生成测试说明(优先使用自定义环境变量,否则取最近10条Git提交) if [ -z "$TEST_FLIGHT_NOTES" ]; then TEST_FLIGHT_NOTES=$(git log --pretty=format:"- %h %s" -10) fi # 调用altool更新TestFlight测试说明 xcrun altool --upload-testflight-notes \ --bundle-id "$BUNDLE_ID" \ --version "$APP_VERSION" \ --build-number "$BUILD_NUMBER" \ --notes "$TEST_FLIGHT_NOTES" \ --type ios \ --username "$APP_STORE_CONNECT_USERNAME" \ --password "$APP_STORE_CONNECT_APP_SPECIFIC_PASSWORD"
关键注意事项
- 确保工作流的"Capabilities"中开启了App Store Connect访问权限
- 应用专用密码需开启"App Store Connect"权限,不要使用Apple ID的主密码
关于XCODE_CLOUD_BUILD_NOTES无效的原因
苹果官方未将该变量作为内置参数用于自动填充TestFlight测试说明,社区方案需要配合脚本逻辑才能生效,仅设置环境变量无法触发Xcode Cloud自动应用说明。
内容的提问来源于stack exchange,提问作者ALKIN ÇAKIRALAR
相关产品推荐
相关产品推荐

