关于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. 魔术矩阵Java代码

    //该魔术矩阵默认从右上角45度递增 //@漫流——595128841在qq点com //import java.util.Arrays; //用于打印API函数 public class 魔方矩阵 ...

  2. Xshell6-项目使用

    前端开发中,涉及服务器的地方一般都交给后端处理,这样有时候很不方便,所以,自己来上传服务器是非常爽的啦 工具: Xshell6 传送门: http://www.netsarang.com/produc ...

  3. chrome获取页面element的xPath

    chrome真的是强大的工具 1.在chrome打开的页面点击F12,进入开发者模式 2.点击弹出的开发者工具左上角的跟踪箭头,再点击需要跟踪的页面元素,html程序定位到元素在程序中位置 3.选中的 ...

  4. 微信小程序-饮食日志_开发记录02

    此段时间主要写功能的实现. 内部的增删改查等内容. 主要有食物查找.运动选择.身高体重比例计算等.

  5. 【Spring】Spring-Session-Data-Redis实现session共享

    前言 在开发中遇到一个关于用户体验的问题,每次当运维进行更新重启服务器时,都会导致会员平台中已登录的用户掉线.这是因为每个用户的会话信息及状态都是由session来保存的,而session对象是由服务 ...

  6. StyleBundle打包问题—— /* 未能缩小。正在返回未缩小的内容。

    问题--查看打包发布的结果,类似下面的这样的 /* 未能缩小.正在返回未缩小的内容. (1567,65): run-time error CSS1054: JavaScript error in ex ...

  7. postgresql查询栅格数据范围(extent)

    栅格数据: SELECT ST_Extent(rast::geometry) as bextent FROM tmean_19; 矢量数据: SELECT ST_Extent(way) as bext ...

  8. k8s实战--redis主从--guestbook

    快速入门 实验:通过服务自动发现的redis主从 难点: 1,服务的自动发现,即如何确定coreDNS 已生效 2,redis的主从验证 遇到的问题: 1,Can't handle RDB forma ...

  9. 页面禁止刷新处理Js实现

    document.onkeydown = function(e) { e = window.event || e; var k = e.keyCode; //屏蔽ctrl+R,F5键,ctrl+F5键 ...

  10. C# 异步编程,async与await的简单学习

    前提声明:C# 5.0 .NET Framework 4.5 2012-08-15 异步和等待(async和await).调用方信息(Caller Information)  (C#版本与.NET版本 ...