如何在Jenkins单次构建中向App Center发布两款Flavor版Android应用?
解决Jenkins单次构建中向App Center发布多Flavor APK的问题
针对你遇到的App Center插件只能单路径上传的问题,有三种可行方案解决单次构建发布两款Flavor应用的需求:
1. 流水线(Pipeline)中多次调用App Center插件
如果你的Jenkins使用Pipeline脚本,可以在同一个阶段内两次调用appcenterUpload步骤,分别指定两个Flavor对应的APK路径和App Center应用ID:
stage('Upload to App Center') { steps { // 上传第一个Flavor的APK appcenterUpload( appName: '你的组织名/Flavor应用1的名称', apkFile: 'app/flavor1/release/app-flavor1-release.apk', apiToken: credentials('app-center-api-token'), // 从Jenkins凭证中获取Token distributeGroups: '测试组名称' ) // 上传第二个Flavor的APK appcenterUpload( appName: '你的组织名/Flavor应用2的名称', apkFile: 'app/flavor2/release/app-flavor2-release.apk', apiToken: credentials('app-center-api-token'), distributeGroups: '测试组名称' ) } }
2. 使用App Center CLI命令行上传
摆脱插件的限制,直接用App Center官方CLI工具完成多文件上传,步骤如下:
- 先在Jenkins节点上安装CLI:
npm install -g appcenter-cli - 在Jenkins构建步骤中添加Shell(或Windows批处理)命令,分别上传两个APK:
# 上传第一个Flavor应用 appcenter distribute release --app 你的组织名/Flavor应用1的名称 --file app/flavor1/release/app-flavor1-release.apk --group 测试组名称 --token ${APPCENTER_TOKEN} # 上传第二个Flavor应用 appcenter distribute release --app 你的组织名/Flavor应用2的名称 --file app/flavor2/release/app-flavor2-release.apk --group 测试组名称 --token ${APPCENTER_TOKEN}
注意:
${APPCENTER_TOKEN}需要通过Jenkins的凭证管理注入,避免明文泄露Token。
3. 自由风格项目添加多个App Center上传步骤
如果使用Jenkins自由风格项目,无需修改复杂脚本,只需添加两个独立的App Center插件构建步骤:
- 点击「添加构建步骤」,选择「App Center Upload」
- 第一个步骤配置第一个Flavor的APK路径、App Center应用ID和其他参数
- 再次添加「App Center Upload」步骤,配置第二个Flavor的对应信息
额外注意事项
- 确保Jenkins构建过程中已正确生成两个Flavor的APK,路径配置准确无误
- 用于上传的App Center API Token需要拥有两个目标应用的发布权限
- 若APK需要签名,确认两个Flavor的签名配置均正确,避免上传后无法安装
内容的提问来源于stack exchange,提问作者Hari Nikesh R
相关产品推荐
相关产品推荐

