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 ...
随机推荐
- 解决iOS xcode打包unknown error -1=ffffffffffffffff错误
# 网上很多文档说重启机器,清除缓存什么的,纯属扯淡,都是相互复制粘贴,经测验在stackoverflow找到以下解决方法,亲测可用security unlock-keychain -p " ...
- python定义函数时默认参数注意事项
如果在调用一个函数时,没有传递默认参数,则函数内的默认参数是对函数的默认参数属性__defaults__的引用, 如 def func(arg1=[]): arg1.append(2) 调用func时 ...
- Win32调试API原理
在Win32中自带了一些API函数,它们提供了相当于一般调试器的大多数功能,这些函数统称为Win32调试API(Win32 Debug API).利用这些API可以做到加载一个程序或捆绑到一个正在运行 ...
- Linux上安装rz和sz命令
简介 lrzsz 官网入口:http://freecode.com/projects/lrzsz/ lrzsz是一个unix通信套件提供的X,Y,和ZModem文件传输协议 windows 需要向ce ...
- django cookie 提供的功能 参数
# 用户发来数据带来所有COOKIES 这个cookie是字典 request.COOKIES # 获取字典 获取cookierequest.COOKIES["username111&quo ...
- mongoDb,下载及启动
mongoDb下载 https://www.mongodb.com/download-center 可视化工具Robomongo下载 https://robomongo.org/download m ...
- Telnet命令参考手册
Dubbo2.0.5以上版本服务提供端口支持telnet命令,使用如: telnet localhost 20880 或者: echo status | nc -i 1 localhost 20880 ...
- thread msg
提取的nordic rf51xx/rf52xx sdk中的线程间消息通信机制,非常简洁 demo.c #include <stdio.h> #include <stdlib.h> ...
- rtsp/rtmp/hls/onvif测试源以及ffmpeg在流媒体方面的应用
一.rtsp/rtmp/hls/onvif测试源 1. rtsp rtsp://184.72.239.149/vod/mp4:BigBuckBunny_175k.mov 2.rtmp rtmp://l ...
- 利用crontab系统每天定时备份MySQL数据库及删除指定crontab定时任务
利用系统crontab来定时执行备份文件,按日期对备份结果进行保存,达到备份的目的. 1.创建保存备份文件的路径/mysqldata mkdir /mysqldata 2.创建/usr/sbin/ba ...