Jenkins+Gradle+Grovvy实现Android自动化构建及加固

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/weixin_38703938/article/details/81871176

上次配置了这个环境,也进行了测试,但忙于其他事情了,今日抽空总结一下。

Jenkins 下载与安装配置

下载这里提供两种方式:

1.第一种就是下载安装包直接安装,下载地址:http://mirrors.jenkins-ci.org(这个坑我没踩,因为里面每一个我看得懂的)

2.第二种就是下载war包,放到Tomcat中启动。war包下载地址:http://mirrors.jenkins-ci.org/war/, 或者http://updates.jenkins-ci.org/download/war/(这里需要安装tomcat,我这里主要讲的是这种方式)

安装配置

1.将下载的jenkins.war放到Tomcat下的webapps目录下,然后启动Tomcat。

2.在浏览器中访问”Tomcat访问地址/jenkins”即可安装,因为我的Tomcat装在本机,并且端口为8080,所以访问http://localhost:8080/jenkins/即可进行安装。

3.打开浏览器访问http://locahost:8080,首次运行会要求输入管理员密码,Jenkins在首次运行时生成的,会在控制台打印出来或者按照页面提示的文件路径查看管理员密码。如下图

4.输入密码之后点击continue选择要安装的插件

5.由于Jenkins的插件之间存在依赖关系,并且Jenkins不会帮我们自动安装依赖的插件,所以插件安装过程比较容易出错,所以我们建议自己选择要安装的插件,不选择Jenkins建议安装的插件。点击Select plugins to install进入下一个页面(直接安装建议的也没啥,后期需要啥再自己补)

6.首先把默认选中的插件都取消掉,然后选择我们要安装的插件,对于Android打包来讲一般需要的插件有

_Active Directory plugin

_Build Pipeline Plugin

_Build Timeout

_build-name-setter

_CloudShell Sandbox Plugin

_Email Extension Plugin

_Git plugin

_GitHub plugin

_Gradle Plugin

_Groovy Events Listener Plugin

_Groovy Postbuild

_Pipeline

_PowerShell plugin

_Publish Over SSH

_SSH plugin

_Subversion Plug

_Timestamper

_Workspace Cleanup Plugin

如果插件安装过程中由于依赖关系造成安装失败,可以根据错误信息先安装依赖的插件再重新安装需要的插件。(如果有找不到的也没有关系)

7.插件安装完成之后按照提示创建一个管理员账号即可使用,登录之后进行首页面。

8.配置环境变量,需要配置的环境变量有Android Home、JDK目录、Gradle目录。

选择系统配置→环境配置→全局属性

然后在系统配置→全局工具配置

配置项目打包脚本

项目的打包脚本会在各自项目中自己生成,提交到svn(可以略过)

配置和安装就完成了。

使用步骤

1.在Jenkins中点击新建,输入Job名字,由于Jenkins会根据Job名字生成目录所以建议使用英文不要使用中文,然后选择构建一个自由风格的软件项目,然后点击OK进入配置页面

一般配置

源码管理(怎么选择看的很清楚)

构建

构建后操作

groovy脚本重点解释一下:

我这里采用的是360加固

def space = " "
def JAVA = "java"
def jgJarPath = "D:/360jiagu/jiagu/jiagu.jar"//jar包路径
def jar = "-jar" + space + jgJarPath
def login = "-login"
def username = "18130612068"//username
def password = "yfg8175349"//password
def importsign = "-importsign" //import sign
def keyStorePath = "D:/key/keystore.jks"//签名路径
def keyStroePassword = "ahhx965432"//keystore password
def alias = "key0" //alias
def alias_password = "ahhx965432" //alias password
def showSign = "-showsign" //show sign
def jiagu = "-jiagu" //jiagu
def inputAPKpath = "C:/Users/yfg10/.jenkins/workspace/test/build/output/release.apk" //input apk path
def outputPath = "D:/JenkinsWorkSpace/workspace/testjenkins" //output apk path
def autosign = "-autosign"//sign


def defaultJG = JAVA + space + jar + space
def loginJG = defaultJG + login + space + username + space + password
def signJG = defaultJG + importsign + space + keyStorePath + space + keyStroePassword + space + alias + space + alias_password
def showSignJG = defaultJG + showSign
def jiaguJG = defaultJG + jiagu + space + inputAPKpath + space + outputPath + space + autosign


String[] jiagus = Arrays.asList(loginJG, signJG, showSignJG,  jiaguJG)

jiagus.each {
    println "${it}"
    Process process=it.execute();
    println "${process.err.text}"
    println "${process.text}"
}

加固包的路径、用户名、密码、apk的签名文件路径、密码、别名、加密前后安装包的路径等需要自行修改。

(对应的加固包可在360加固官网下载,然后使用教程先用命令行加密,确保jar的可用性)

2.Job配置一共分为六个部分:General、源码管理、构建触发器、构建、构建后操作,设置完成后,保存,进入主面版

3.立即构建

4.点击项目任务进入控制台界面查看项目构建日志信息

5.在tomcat 日志输出日志可以看到apk 加固信息

6.最后,项目里面的groovy 脚本配置加固后的apk 输出到指定路径,直接在指定目录(你的Jenkins的工作空间)就可以看到360加固后的apk。

写在最后

写的有点乱,欢迎指出错误和改正意见。

猜你喜欢

转载自blog.csdn.net/weixin_38703938/article/details/81871176