背景
蒲公英是应用内测分发平台,致力于为广大开发者提供全面、高效、安全、稳定的开发者服务。拥有国内领先的应用内测分发平台;具备专业解决应用测试和上线问题的能力;提供轻量级Bug管理平台、网站错误监控平台、Git管理工具、知识库管理系统。
通过选择蒲公英应用分发平台来快速实现内测分发目的,也是为了提升用户更好的体验感,也为了后期快速通过应用商店的审核成功上架。
技术实现
功能
- 通过可视化表单信息填写,上传 ipa/apk 文件到蒲公英。
- 可以将上传后蒲公英返回的信息用于 jenkins 的其他构建步骤。
安装方法
手动安装:
- 下载插件 upload-pgyer.hpi,手动导入 jenkins,点击这里下载插件安装包。
- 选择 jenkins -> 系统管理 -> 插件管理 -> 高级,找到 Deploy Plugin,点击 选择文件,然后选择上一步中下载的文件,点击按钮 Deploy,如图:
通过插件库安装:
在 jenkins 中选择 Manage Jenkins -> Manage Plugins -> Available -> Search -> 输入 Upload to pgyer -> install
使用插件
- 在 jenkins 的 job 配置页面
构建后
操作中添加构建步骤 upload to pgyer with apiV2, 如下图:
插件添加成功后,会显示一下效果:
- 插件填写参数说明:
参数 | 说明 |
---|---|
pgyer api_key | 蒲公英的api_key (必填) |
scandir | ipa/apk 所在目录 (必填) |
file widcard | 上传文件的通配符 (必填) 如: android 或者ios, 默认android |
buildType | 需要上传应用程序类型,支持 (必填) |
installType(optional) | 应用安装方式,值为(1,2,3)默认值为1。1: 公开安装 2:密码安装,3:邀请安装。(选填) |
password(optional) | 设置App安装密码(选填) |
updateDescription(optional) | 版本更新描述(选填) |
- 执行构建,蒲公英上传插件将输出相应的 log,如下图:
3. 上传蒲公英成功后,可在 jenkins 中的其他构建中使用蒲公英上传成功后返回的参数。插件会将蒲公英返回的参数注入为 jenkins 的全局变量,在其他构建步骤的使用方法直接引用这个全局变量即可,变量名称直接使用返回的 key 值。例如:
${appBuildURL}
如果应用发布成功,返回的参数列表为:
参数 | 类型 | 说明 |
---|---|---|
buildKey | String | Build Key是唯一标识应用的索引ID |
buildType | Integer | 应用类型(1:iOS; 2:Android) |
buildIsFirst | Integer | 是否是第一个App(1:是; 2:否) |
buildIsLastest | Integer | 是否是最新版(1:是; 2:否) |
buildFileSize | Integer | App 文件大小 |
buildName | String | 应用名称 |
buildVersion | String | 版本号, 默认为1.0 (是应用向用户宣传时候用到的标识,例如:1.1、8.2.1等。) |
buildVersionNo | String | 上传包的版本编号,默认为1 (即编译的版本号,一般来说,编译一次会变动一次这个版本号, 在 Android 上叫 Version Code。对于 iOS 来说,是字符串类型;对于 Android 来说是一个整数。例如:1001,28等。) |
buildBuildVersion | Integer | 蒲公英生成的用于区分历史版本的build号 |
buildIdentifier | String | 应用程序包名,iOS为BundleId,Android为包名 |
buildIcon | String | 应用的Icon图标key,访问地址为 www.pgyer.com/image/view/…] |
buildDescription | String | 应用介绍 |
buildUpdateDescription | String | 应用更新说明 |
buildScreenShots | String | 应用截图的key,获取地址为 www.pgyer.com/image/view/…] |
buildShortcutUrl | String | 应用短链接 |
buildQRCodeURL | String | 应用二维码地址 |
buildCreated | String | 应用上传时间 |
buildUpdated | String | 应用更新时间 |
而这些返回参数,被蒲公英插件给设置为全局环境变量了。在其他地方可以通过${变量名}
进行访问操作。蒲公英上传成功后返回参数的参考 请看这里。