jenkins+gradle打包android遇到的坑
1.gradle与gradlew的选择
配置project,我们选择gradle进行打包。会看到如下图配置项。然而很多网上教程中给出的选择是第一项。只能这么说,如果你是新建一个androidDemo,这样设置完全没问题。
但是一个真实的项目,这样恐怕就要出问题。也许见识的比较少,不知道猜测对不对,团队合作,每个人的环境不一致,可能导致Build失败,于是使用的项目使用的是gradle wrapper。如果我们这里配置invoke gradle,就会报错。(报什么错呢,等我去修改下配置,给图给各位看,已经截图了)


当初看到这个错,搞了很久,怎么都不行,后来反复看了一位前辈的文章(找不到出处了),觉得有可能是因为选错了,于是尝试使用 use gradle wrapper。可以自行下载相应的包,也可以自动下载,需要的版本在android项目文件中应该有写,不知道的话请联系项目研发,如果是你自己写的项目,找不到,那我也无话可说了。
配置完,点击构建,解决,Build成功。
2.打包成功,但是打出来的release包标记了unsigned.
嘛意思呢,就是没有签名。没有签名意味着,无法安装,无法发布。于是找研发问了,签名如何实现的。研发也是很热心,过来点点点,输入密码各种key,然后打包完了。
然并卵,我总不可能让Jenkins也点点点啊。。。于是研究如何代码中如何实现的签名的,android studio是如何实现签名的。无数次的麻烦研发,看代码之后,终于发现android studio与jenkins想要实现上完全不一样。android studio打包会去选择签名文件以及输入各种信息,然而我们jenkins想要自动化打包,则必须将所需信息写在配置文件里面。下面是代码截图
buildTypes中的sigingConfig signingConfigs.signingConfig 就是调用上面的配置文件。作为测试搞不定这个代码,就找研发吧。(就算搞定,没有权限提交,也请找研发)
配置完成之后再构建打包,应该就能解决签名不成功的问题了(自己找到的解决办法,找研发改的代码之后解决了问题,作为一名测试,还是很有成就感)
3.打完包去哪儿了呢?
好吧,这个问题其实是自己对jenkins不熟悉造成的。如果是androidstudio打包,会到项目主目录下,但是如果是jenkins就不是了。会在project输出目录中去…/outputs中,或者如果代码中指定了输出目录,就是指定输出目录,为了减少自己的麻烦,我都是默认。
jenkins+gradle打包android遇到的坑的更多相关文章
- Jenkins+Gradle实现android开发持续集成、打包
Jenkins简介 Jenkins 是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从繁杂的集成中解脱出来,专注于更为重要的业务逻辑实现上.同时 Jenkins 能实施监控集成中存在的错误, ...
- gradle打包android (实现外部导入签名文件、多渠道打包、导入ant脚本)
近期一直在做android自己主动打包,之前已经完毕了用纯命令行的形式打包.原生态ant脚本打包.和基于android的SDK的打包.而且实现了多渠道打包,后来同事推荐了gradle,网上的资料说gr ...
- 照片教你eclipse通过使用gradle 打包Android
gradle其他优点不说,在android当应用程序公布.假设你要算一些渠道,gradle 在节目包装散装优势:下面给大家介绍的图形 按eclipse当出口 选择Android:例如下面的附图 一步一 ...
- Jenkins + Gradle + pgyer + Android自动发布
Jenkins配置与必要的环境配置 一:Jenkins服务端(Linux系统为例说明): 1.jdk安装与配置 2.SDK安装与配置 3.安装配置对应的gradle版本(建议gradle版本在4.1版 ...
- 在服务器上使用 gradle 打包 android 源码
安装 android-tools mkdir ~/android && cd ~/android wget https://dl.google.com/android/reposi ...
- weex打包android apk采坑之旅(windows)
1. npm install weex-toolkit -g 后weex命令不起作用 ,解决办法把weex.cmd所在的目录添加到环境变量PATH 2.weex命令每次报找不到文件'C:\Progra ...
- Android Jenkins自动打包纪录
关于Jenkins自动打包Android的apk包,网上官方的太多,这里简单纪录一下博主的经历和打包的参数纪录 (本篇文章需要对Jenkins有最基本的基础了解) 博主所在公司曾负责app测试过程中发 ...
- MAC下配置gradle用eclipse 打包android程序
1.下载gradle binhttp://gradle.org/gradle-download/ 2.配置gradle,http://www.douban.com/note/311599602/htt ...
- jenkins 安卓打包生成二维码下载
先来张图看看吧 构思 jenkins gradle 打包apk文件,python myqr 模块生成二维码 放入nginx 访问图片的路径,apk安装包放在 nginx 下载目录. 环境 centos ...
随机推荐
- python 通过文件路径获取文件hash值
import hashlib import os,sys def CalcSha1(filepath): with open(filepath,'rb') as f: sha1obj = hashli ...
- 【Django错误】OSError: raw write() returned invalid length 14 (should have been between 0 and 7)
错误环境 使用Django框架创建完models类的之后,用python manage.py migrate命令来生成数据库表的时候出错 错误代码 Operations to perform: App ...
- tools-eclipse-002-常用插件
1.spring 查看eclipse版本 下载对应版本插件包Spring Tool Sute 地址:http://spring.io/tools/sts/all 离线包只列举了最新的,如图, 如果ec ...
- 不再依赖A*,利用C++编写全新寻路算法
一,说在前面的话 大概在半年前,看见一到信息竞赛题:在任意方格阵中设置障碍物,确定起始点后,求这两点之间路径.当时觉得蛮有意思的,但是没有时间去做,今天花了两个小时来实现它.据说有一个更高级的寻路算法 ...
- 将 ssh (security shell) 移植到 vxworks
openssh 依赖 openssl,这两个东西主要针对posix系统,移植到 vxworks 等实时系统有相当的难度. 可以考虑移植如下的库(ssh server): dropbear: https ...
- mysql监控优化(三)慢查询
顾名思义,慢查询日志中记录的是执行时间较长的query,也就是我们常说的slowquery,通过设--log-slow-queries[=file_name]来打开该功能并设置记录位置和文件名.慢查询 ...
- TensorFlow学习笔记(一)--windows系统安装配置
1.关于Tensorflow 国际惯例,先来个总体的简要介绍,摘自一个很强大的TensorFlow中文学习网站(http://www.tensorfly.cn/)的简介 TensorFlow™ 是一个 ...
- DecisionTree
1.信息增益的定义,也就是互信息 2.信息增益的推导 由公式即可得到信息增益 信息增益存在偏向于选择取值较多的特征的问题,信息增益比可以对这一问题进行修正 3.信息增益比 4.基尼指数,基尼指数越大, ...
- 20165324 学习基础与C语言学习心得
20165324 技能学习心得与C语言学习 一.读后感及技能学习 做中学读后感 我认为给学生具体的, 能实践的, 能马上看到因果关系的教材和练习, 是激发学生兴趣, 好奇心, 求知欲的好方法. 我就是 ...
- Part01、sqlalchemy 使用
一.ORM 连表 一对多 1.创建表,主动指定外键约束. 2.操作. ...