关于Jenkins自动打包Android的apk包,网上官方的太多,这里简单纪录一下博主的经历和打包的参数纪录

(本篇文章需要对Jenkins有最基本的基础了解)

博主所在公司曾负责app测试过程中发生过事故,测试环境和预发布环境测试通过后,开发再打包正式环境apk时,忘记修改部分配置参数

导致上线后,app各种功能故障,龙颜大怒,紧急重新发版。

 好处:1、服务器自动打包,想什么时候要就什么时候要,不局限于开发是否有空

    2、打包发版转交给测试进行实施,安全闭环进一步锁牢,风险降低

    3、持续集成,可配置相关UI自动化脚本形成持续集成,高大上

    4、自我提升,可拓展性无限放大

    5、。。。

打包过程:

源码管理》》构建环境》》Gradle构建》》自定义后续操作》》构建后操作

解析:首先将git仓库的代码拉下来,通过gradle配置打包参数,然后将生成的apk用于后续拓展,博主是将apk上传至蒲公英,在蒲公英生成一个下载链接和下载二维码

再将下载链接和二维码通过钉钉机器人发送到钉钉群里,

效果图:

1、建立一个自由风格的Jenkins项目:

2、源码管理

Android开发将代码集中管理于git仓库,实行打包的第一步就是需要将源码拉下来

在源码管理模块:输入 git的地址、添加拥有权限的账号

$git_branch 参数   自定义打包时git分支

3、构建环境

4、构建

4.1、 添加Gradle 环境  设置打包apk参数

gradle配置打包参数常规的参数:

${VERSION_NAME} 版本名称:如V1.1.0  字符型     Jenkins字符参数

${VERSION_CODE} 主要用于上传应用市场后提示升级:如 1  整型  Jenkins字符参数

${API_ENVIRONMENT} 渠道包参数:如 测试环境(test)、预发布环境(pre)、正式环境(pro)  Jenkins选项参数

########:其实基于以上就能拿到打包的apk文件,但为了后续的方便,便上传至蒲公英,这样可以拿到下载链接和下载二维码

4.2、上传至蒲公英:

蒲公英的key值需要自己去申请,下面分别是上传的路径的apk包

蒲公英会返回一些自己的参数,如下载地址:${appShortcutUrl}、二维码:${appQRCodeURL}  需要什么需要自己去查询

查看日志可查询到参数:蒲公英所有参数如下

4.3、将下载链接和二维码图片通过顶顶机器人发送至钉钉群

增加构建步骤,执行shell 。xxxxxxxxxxxx为钉钉机器人token

钉钉机器人开发者文档快速通道:https://open-doc.dingtalk.com/microapp/serverapi2/qf2nxq

curl -H "Content-type: application/json" -X POST -d '{"msgtype": "text","text": {"content": "下载链接:'"https://www.pgyer.com/${appShortcutUrl}"'"},}' https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
curl -H "Content-type: application/json" -X POST -d '{"msgtype": "markdown","markdown": {"title":"下载二维码","text":"![screenshot]('${appQRCodeURL}')"},}' https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

5、构建后操作

Android Jenkins自动打包纪录的更多相关文章

  1. Jenkins自动打包配置

    当时也是花费了不少时间来配置Jenkins自动打包的问题,觉得还是需要记录一下. 1.安装Jenkins,这个很简单,不需要多说. 2.下载Git Plugin,Gradle Plugin,Andro ...

  2. 基于jenkins自动打包并部署Tomcat环境

    传统网站部署的流程 在运维过程中,网站部署是运维的工作之一.传统的网站部署的流程大致分为:需求分析->原型设计->开发代码->提交代码->内网部署->内网测试->确 ...

  3. Android ant自动打包脚本:自动替换友盟渠道、版本号、包名

    本文最后修改时间:2014-3-10 Android项目开发时,给公司人员安装,频繁升级,版本号总需要改,太麻烦,跟着时间变,自动升级才方便. Android项目开发新版时,手机上可能要装两个版本,一 ...

  4. jenkins自动打包生成docker镜像后自动发布并nginx代理访问

    之前曾写过docker及jenkins基础使用  https://www.cnblogs.com/xiaochangwei/category/816943.html 现在搭建环境的功能为: 1.jen ...

  5. [iOS开发] 使用Jenkins自动打包并上传至蒲公英

    设置构建触发器 Poll SCM H/2 * * * * 设置 构建脚本 # #xodebuild & jenkins 自动构建并上传至pgyer.com #2017年5月9日 # #定义一些 ...

  6. Jenkins自动打包相关操作

    Jenkins安装 Jenkins作为一个开源的集成工具,不仅可以用来进行android打包 ,也可以用来进行ios java 服务打包 官方地址https://jenkins.io/ 选择对应的系统 ...

  7. Android Jenkins 自动化打包构建

    前言 在测试app项目过程中,通常都是需要开发打测试包给到测试,但是无论是iOS还是Android的打包过程都是相当漫长的,频繁的回归测试需要频繁的打包,对于开发同学影响还是蛮大的.因此在这种情况下, ...

  8. Android ant自动打包 crunch 报错

    解决办法: 修改SDK_HOME/tool/ant/build.xml. <property name="aapt.ignore.assets" value="&l ...

  9. jenkins自动打包部署项目

    首先去jenkins的官网下载安装包 https://jenkins.io/   个人下载是长期稳定的那个版本,下载后,得到一个.msi的安装包: 点击进行安装,然后一直点击下一步. jenkins会 ...

随机推荐

  1. vue修改富文本中的元素样式

    富文本编辑器目前应用很广泛,而有时候我们想要对其中的一些元素的样式进行修改,就会遇到问题. 首先,直接修改是不可行的,因为是用v-html标签进行渲染的,无法直接获取到. 在修改的时候,一般是按标签进 ...

  2. 弹弹弹,弹走鱼尾纹的弹出菜单(vue)

    前言 上一篇面试的总结,大家看的还行,因为量很大,错误在所难免,希望大家发现错误了可以告诉我一声,我的邮箱是236490794@qq.com,一个小前端的希望. 言归正传 我们老样子直接先上效果图再开 ...

  3. python基础31[python IDE之Eclipse+PyDev]

    一 入门IDE作为python的初学者,在语法和类库学习阶段,我们可以使用以下简单使用的IDE:1) Python SDK 自带的IDEL(Python GUI)2) Komodo-Edit3) No ...

  4. mybatis——mybatis打印sql 接口工作原理

    https://blog.csdn.net/Lxinccode/article/details/79218566 接口工作原理: Dao接口即Mapper接口.接口的全限名,就是映射文件中的names ...

  5. 【leetcode】1230.Toss Strange Coins

    题目如下: You have some coins.  The i-th coin has a probability prob[i] of facing heads when tossed. Ret ...

  6. 泛型(二)封装工具类CommonUtils-把一个Map转换成指定类型的javabean对象

    1.commons-beanutils的使用 commons-beanutils-1.9.3.jar 依赖 commons-logging-1.2.jar 代码1: String className ...

  7. Maven手动命令行导入ojdbc6

    Maven项目中导入Oracle的驱动包时,可能会出现像我一样下载资源不成功的情况,如下图所示:  出现这种情况的原因其实是因为Oracle的授权问题,这样的话,我们在需要使用Oracle的驱动包时, ...

  8. javaweb上传大文件的问题

    总结一下大文件分片上传和断点续传的问题.因为文件过大(比如1G以上),必须要考虑上传过程网络中断的情况.http的网络请求中本身就已经具备了分片上传功能,当传输的文件比较大时,http协议自动会将文件 ...

  9. The GuidRepresentation for the reader is CSharpLegacy, which requires the binary sub type to be Uuid

    使用客户端链接MongoDb报错 The GuidRepresentation for the reader is CSharpLegacy, which requires the binary su ...

  10. [BZOJ2791]:[Poi2012]Rendezvous(塔尖+倍增LCA)

    题目传送门 题目描述 给定一个有n个顶点的有向图,每个顶点有且仅有一条出边.每次询问给出两个顶点${a}_{i}$和${b}_{i}$​​,求满足以下条件的${x}_{i}$和${y}_{i}$:   ...