jenkins+gradle+上传蒲公英(Android持续集成)

  本文Android自动化打包采用jenkins+gradle+upload to pyger的方式来实现,job执行完后只需要打开链接扫描二维码即可下载apk。

一、环境准备

1.下载Android SDK(最好下载开发工具Android Studio)

2.安装jenkins

二、配置jenkins变量

配置Android自动打包之前需要下载两个插件,gradle和upload to pyger。

1.安装gradle插件:系统管理->管理插件

2.安装upload_to_pyger插件:系统管理->管理插件

3.配置gradle插件,gradle版本根据需要选择,点自动安装:系统管理->全局工具配置

4.设置环境变量。键值对列表,键:ANDROID_HOME  值:D:\Program Files (x86)\Android\android-sdk(上文下载的SDK)

三、创建jenkins job

1.新建一个job,选择“构建一个自由风格的软件项目”

2.源码管理配置git地址信息。

3.构建选择“invoke Gradle script”

4.选择Gradle所需的版本号

# 清除app目录下.apk文件
app:clean
# 打包Release版本的包
app:assembleRelease

5.继续添加构建步骤:

6.Upload to pgyer

这里参考GitHub上的参数定义:

需要填写的字段 字段的解释
pgyer uKey (APIV1必填,APIV2无此参数) 用户Key,用来标识当前用户的身份,
对于同一个蒲公英的注册用户来说,这个值在固定的。
点击获取_ukey
pgyer api_key (必填) API Key,用来识别API调用者的身份,
如不特别说明,每个接口中都需要含有此参数。
对于同一个蒲公英的注册用户来说,这个值在固定的。
点击获取_api_key
scandir (必填) 需要上传的apk/ipa文件所在的文件夹或者父文件夹,
当前默认路径是${WORKSPACE},它代表了当前项目的绝对路径。
这个功能的实现使用了ant框架的DirectoryScanner类,点击查看DirectoryScanner类
这个字段就是DirectoryScanner类中的basedir方法的参数点击查看basedir方法
file wildcard (必填) 需要上传的apk/ipa文件的名字,支持通配符,
就像这样: **/Test?/*.apk,
这个功能的实现使用了ant框架的DirectoryScanner类,点击查看DirectoryScanner类
这个字段就是DirectoryScanner类中的includes方法的参数,点击查看includes方法
installType (选填) 应用安装方式,值为(1,2,3)。
1:公开,2:密码安装,3:邀请安装。
默认为1公开
password (选填) 设置App安装密码,如果不想设置密码,请传空字符串,或不传。
updateDescription (选填) 版本更新描述,请传空字符串,或不传。
qrcodePath (选填) 如果你需要下载蒲公英返回的二维码,那么这里填写二维码的存储路径,
如果你不需要下载,那么你不需要在这里填写任何内容。
envVarsPath (选填) 如果你想存储蒲公英返回的上传信息,那么这里填写保存信息的文件路径,
如果你不需要保存,那么你不需要在这里填写任何内容。

GitHub链接:https://github.com/jenkinsci/upload-pgyer-plugin/blob/master/README_cn.md

最后我的配置如下:

上传完成后在蒲公英平台找到下载链接,以后每次构建后只需要打开链接就能下载apk。

7.构建成功

打开下载链接,可以看到apk在2分钟前上传了,扫描二维码即可下载APP。

四、总结

  在配置Android APP自动化打包时候踩过很多坑,SDK里有些build tool和api没有下全,所以我建议下载AS,遇到问题自我分析和调试。

原文地址:https://www.cnblogs.com/shenh/p/9640233.html

时间: 2024-10-09 10:49:34

jenkins+gradle+上传蒲公英(Android持续集成)的相关文章

基于Jenkins+git+gradle的android持续集成,jenkinsgradle

转载:http://www.android100.org/html/201506/22/156680.html 基于Jenkins+git+gradle的android持续集成,jenkinsgradle 本文参考了: http://my.oschina.net/uboluo/blog/157483 http://java.dzone.com/articles/automating-continuous 以前都是通过IDE(eclipse or Android Studio)手动生成apk通过Q

使用 Jenkins 搭建 iOS/Android 持续集成打包平台【转】

背景描述 根据项目需求,现要在团队内部搭建一个统一的打包平台,实现对iOS和Android项目的打包.而且为了方便团队内部的测试包分发,希望在打包完成后能生成一个二维码,体验用户(产品.运营.测试等人员)通过手机扫描二维码后就能直接安装测试包. 该需求具有一定的普遍性,基本上所有开发APP的团队都可能会用到,因此我将整个需求实现的过程整理后形成此文,并且真正地做到了零基础上手,到手即飞.开箱即用,希望能对大家有所帮助. 首先,先给大家展示下平台建设完成后的整体效果: 该平台主要实现的功能有3点:

使用jenkins配置.net mvc网站进行持续集成二

上一篇使用jenkins配置.net mvc网站进行持续集成一只是简单介绍了jenkins构建站点到本地服务器,这一篇,就来讲解如何部署站点到指定的服务器上面. 1.IIS远程发布配置 1.在服务器管理器中安装“管理服务”(若已存在则无须再安装) 1.1 服务器管理----->角色----->web 服务器IIS 1.2 点击右下角 “添加角色服务”,弹出选择“选择角色服务”对话框. 1.3 选中“管理服务” 点击“下一步”----->点击“安装”.安装完成后,重新打开“服务器管理器”在

基于Jenkins Pipeline的ASP.NET Core持续集成实践

原文:基于Jenkins Pipeline的ASP.NET Core持续集成实践 最近在公司实践持续集成,使用到了Jenkins的Pipeline来提高团队基于ASP.NET Core API服务的集成与部署,因此这里总结一下. 一.关于持续集成与Jenkins Pipeline 1.1 持续集成相关概念 互联网软件的开发和发布,已经形成了一套标准流程,最重要的组成部分就是持续集成(Continuous integration,简称 CI) . 持续集成指的是,频繁地 (一天多次) 将代码集成到

基于Jenkins的开发测试全流程持续集成实践

今年一直在公司实践CI,本文将近半年来的一些实践总结一下,可能不太完善或优美,但的确初步解决了我目前所在项目组的一些痛点.当然这仅是一家之言也不够完整,后续还会深入实践和引入Kubernetes进行容器编排,以及通过阿里云K8S服务进行高效的云上托管,希望对各位童鞋有一点用. 一.持续集成全流程介绍 今年一直在开发我司的一个核心业务系统,一个还未上线的产品开发阶段,其中后端采用ASP.NET Core + 一系列开源组件开发微服务并且部署在Linux Docker中,前端采用React + Fl

基于Jenkins+git+gradle的android持续集成

本文参考了: http://my.oschina.net/uboluo/blog/157483 http://java.dzone.com/articles/automating-continuous 以前都是通过IDE(eclipse or Android Studio)手动生成apk通过QQ或者邮件发送给测试人员进行测试,现在的司要求对项目进行持续集成,也就是说通过某种方式定时(比如每晚凌晨三点)自动将git库中最新的代码pull下来编译打包,测试人员每天早上上班都能拿到最新的代码打包的Ap

studio(intellij)+gradle(1.0+)+jenkins 打包&上传私服

现在比较流行使用gradle来配置项目,本文着重介绍studio和intellij打包. 在Android gradle项目中project类似于eclipse的workspace,而moudule类似于eclipse的project. demo svn位置:http://10.3.254.91/svn/mobile/android/GradleTest demo jenkins项目名称:Android_GradleTest 选择gradle包 那么基于gradle的project下会有一个gr

Jenkins在Windows系统dotnet平台持续集成

        之前写过一篇文章是在CentOS上构建.net自动化编译环境, 今天这篇是针对于Windows平台的环境.        Jenkins是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能.Jenkins是基于Java开发的一种持续集成工具,用于监控持续重复的工作, Jenkins是由Sun的前员工开发的,它的根基是Java,但也可以用在非Java的项目里,比如PHP.Ruby on Rails..NET.持续集成相关的工具有很多.它提供了Web界面,用户

使用gradle上传项目到jcenter

1.到https://bintray.com/注册一个账号 2.AndroidStudio创建一个项目,然后再在这个项目里创建一个library(File->New->New Module->Android Library) 3.打开项目根目录的gradle.properties文件,复制下面的内容,替换相应字段的值 VERSION_NAME=0.1.0 GROUP=com.zzb.library POM_NAME=jcenter test POM_ARTIFACT_ID=common