jenkins+gradle+android 实现打包自动发布

一,终极目标:一键完成下面所有步骤


1,jenkins自动拉取代码,打apk包
2,自动签名
3,自动加固
4,apk上传服务器


二,达成目标所需完成的工作


1,jenkins安装、部署------我用的是公司已经搭建好的jenkins服务器(难度:无难度


2,配置jdk------jenkins【系统管理/全局工具】配置JDK路径(难度:无难度

jenkins+gradle+android 实现打包自动发布_第1张图片

3,配置gradle------jenkins【系统管理/全局工具】配置(难度: **)

jenkins+gradle+android 实现打包自动发布_第2张图片

这里的难度在于,如果你的jenkins服务器不能连外网,则无法自动下载,需要通过可连外网的电脑下载相应版本的gradle然后上传到服务器上

4,安装gradle插件-------jenkins【系统管理/插件管理】安装(难度:无难度

jenkins+gradle+android 实现打包自动发布_第3张图片

gradle 插件是jenkins安装时默认安装的插件,这一步主要是检查、确认有没有安装gradle插件

5,安装git插件-------jenkins【系统管理/插件管理】安装(难度:无难度


6,下载sdk-------jenkins【系统管理/插件管理】安装(难度: ***** )


这是我认为最难的一步,原因在于sdk都是google提供的,众所周知的原因,我们只能选择通过国内镜像去下载,但镜像上不完整且不稳定,到目前为止我没有找到一个很完美的镜像。

更为困难的是,jenkins一般部署在内网之中,因为安全原因,通常不会具备访问外网的权限,这就导致连访问国内镜像都不行。

唯一的办法是手动下载sdk,然后打包上传到服务器。


首 先 , 新 建 如 下 图 所 示 的 S D K 目 录 结 构 \color{red}{首先,新建如下图所示的SDK目录结构} SDKjenkins+gradle+android 实现打包自动发布_第4张图片

sdk的包结构如上图所示,add-ons是第三方提供的工具,我的项目没用到,所以是空的


第 二 , 根 据 上 述 目 录 及 项 目 所 需 下 载 各 种 平 台 工 具 \color{red}{第二,根据上述目录及项目所需下载各种平台工具}
jenkins+gradle+android 实现打包自动发布_第5张图片

这里要强调的是,build-tools有Linux、macos、windows版本,要根据自己的操作系统下载正确的版本


最 后 , 介 绍 下 常 用 的 几 种 下 载 s d k 的 有 效 方 法 \color{red}{最后,介绍下常用的几种下载sdk的有效方法} sdk

一是,这个其实最简单,只要成功,下载就很顺利了。

二是国内镜像,但如前文提到的,暂未发现完美的国内Android镜像。

这里贡献一个下载sdk各种包和工具的镜像网站:点我吧,遗憾的是后来发现这个Android镜像失效了

第三就是我的杀手锏了。

dl.google.com这个域名有毒,国内都不给你解析这个域名,但实际上这个域名在国内也有部署服务器,你可以通过下面这个网站找到国内可访问的服务器的ip,然后在你的本机hosts文件配置域名-ip的映射。

点我域名解析

jenkins+gradle+android 实现打包自动发布_第6张图片
从上面的解析结果中找出一个可用的你看着顺眼的ip,把ip和dl.google.com这也域名配置到hosts文件中。

https://dl.google.com/android/repository/build-tools_r25.0.1-linux.zip

7,配置sdk(ANDROID_HOME)环境变量


将环境变量ANDROID_HOME第六步sdk所在路径

8,创建jenkins任务

这是最后一步了。

你可能感兴趣的:(java)