8种机械键盘轴体对比

本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?

Android项目开发过程中,每次测试打包都会浪费较长的时间,为了能节省时间、将精力更多的放在代码编写上,

可利用Jenkins工具进行自动化构建打包,当仓库中的代码有变化时,自动构建打包,节省时间也是迈出开发自动化的第一步。

开发环境

Mac OS:10.11.6

Android Studio:2.3.3

adb:1.0.36

gradle:3.5

jenkins:2.70

运行Jenkins

Jenkins安装完成之后,直接命令行中运行jenkins命令即可,运行成功之后在浏览器中输入

http://localhost:8080/。

配置Jenkins插件

第一次运行会提示安装插件,选择推荐安装即可。

安装完成之后,提示设置用户名、密码等信息。

除了推荐安装的插件之外,Android实现自动构建还需要另外一个插件Android Lint,需要手动安装。系统设置—插件管理,搜索安装即可。

设置sdk路径

系统管理—系统设置—全局属性,新建属性,输入key值和value值,其中key值必须为ANDROID_HOME。

新建项目

在此之前,需要在github上或者内网git仓库新建项目,此例中使用github。地址:https://github.com/loaLakers/HelloWorld.git。

在源码管理中配置git仓库地址及密码等验证信息。

立即构建

点击立即构建,会在本地生成构建成功的项目文件。

文件目录地址可在系统配置-主目录中查看

gradle编译配置

Android项目需要打包还需要配置gradle,点击MyView-helloworld进入项目详情,点击配置,在构建模块设置。

打包

再次点击立即构建,会在本地的目录下生成APK文件。

签名打包

之前的打包是没有签名的,需要在工程的build.gradle中设置签名来自动签名打包。

将代码提交到github后,再次点击立即构建,可在相同的目录下生成已经签名的APK文件,并且名称按照设置规定的形式。

自动定时检测打包

Jenkins可以设置定时检查git仓库是否有更新,如有更新自动构建打包,实现自动化。点击MyView,点击helloworld项目,点击配置,在构建触发器模块设置。

gradle.build配置代码1signingConfigs {//签名的配置

release {

storeFile file("test.jks")

storePassword '123456'

keyAlias 'test'

keyPassword '123456'

}

}

applicationVariants.all { variant ->

if (variant.buildType.name == 'release') {

variant.outputs.each { output ->

def outputFile = output.outputFile

if (outputFile != null && outputFile.name.endsWith('.apk')) {

def fileName = "${releaseTime()}_com.wzh_helloworld_${defaultConfig.versionName}.apk"

output.outputFile = new File(outputFile.parent, fileName)

}

}

}

}

signingConfig signingConfigs.release

applicationVariants.all { variant ->

if (variant.buildType.name == 'release') {

variant.outputs.each { output ->

def outputFile = output.outputFile

if (outputFile != null && outputFile.name.endsWith('.apk')) {

def fileName = "${releaseTime()}_com.wzh_helloworld_${defaultConfig.versionName}.apk"

output.outputFile = new File(outputFile.parent, fileName)

}

}

}

}

lintOptions {

abortOnError false

}

def releaseTime() {

return new Date().format("yyyy-MM-dd-HH:mm:ss", TimeZone.getTimeZone("Asia/Chongqing"))

}

—— END. loaLakers on 07.22

jenkins自动化打包android,Android使用Jenkins实现自动化打包相关推荐

  1. android 乐固渠道打包,Jenkins奇技淫巧 — Python乐固,多渠道打包篇(Android自动化构建)...

    Jenkins奇技淫巧 - 安装篇(mac) Jenkins奇技淫巧 - 配置篇 Jenkins奇技淫巧 - 安全篇 Jenkins奇技淫巧 - 发送邮件篇 Jenkins奇技淫巧 - 全局变量篇 J ...

  2. Jenkins+Git+python+Pgyer Android打包发布实践

    [TOC] 经常在开发的时候,测试/产品/运营等人员会来要求安装一下软件,这时候不得不停下手中的事情来打包安装,但终归不是长久之计: 自己开发时被经常打断思路; 停下来手头的工作来打包,每次怎么也得浪 ...

  3. Centos上使用Jenkins配合Gradle进行Android APK构建和分发

    Centos上使用Jenkins配合Gradle进行Android APK构建和分发 很多时候,测试人员和后台人员需要我们将各个环境APK包发给他们进行测试和调试,但是呢,我们不是时时都能响应他们的需 ...

  4. Android 系统(198)---Android解放双手之Gradle自动化打包实战

    Android解放双手之Gradle自动化打包实战 https://www.jianshu.com/u/0111a7da544b 前言 解放双手,双击桌面快捷方式生成apk包,基于Gradle.bat ...

  5. svn增量打包部署_实现Jenkins+svn+bat批处理构建svn版本差异增量的自动化打zip包

    最近进到的公司,因为我之前做过自动化测试,所以要求我写一个从svn上面的各个目录拉取需要的代码,集合在一起打zip包.想了想,觉得用批处理+Jenkins持续集成工具来操作应该是可行的,于是就开始着手 ...

  6. Android 开发基于 Jenkins 实现持续集成

    Jenkins简介 Jenkins是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从繁杂的集成中解脱出来,专注于更为重要的业务逻辑实现上.同时Jenkins能实现监控集成中存在的错误,提供详 ...

  7. android+apk+反编译和再签名打包,Android:apk反编译步骤,打包、签名和逆向工程经验总结...

    思路一.apktool1.通过apktool反编译出资源和smaliapktool d MobileManager.apkF:\Android\decompile\apktoolapktool d M ...

  8. Jenkins——Jenkins介绍+基于云平台的Jenkins安装和持续集成环境配置(插件+用户权限+凭据+Maven打包)

    Jenkins--Jenkins介绍+基于云平台的Jenkins安装和持续集成环境配置(插件+用户权限+凭据+Maven打包) 持续集成及Jenkins介绍 软件开发生命周期 什么是持续集成? 持续集 ...

  9. Jenkins系列:5、wsl下的Jenkins编译Windows下的Qt程序并自动打包成exe

    Jenkins系列:5.wsl下的Jenkins编译Windows下的Qt程序并自动打包成exe 文章目录 Jenkins系列:5.wsl下的Jenkins编译Windows下的Qt程序并自动打包成e ...

  10. Android手机QQ的UI自动化实践

    UI自动化 我们为什么要搞UI自动化 可能很多同学都有疑问:我们写了这么多单元测试,为什么还需要UI自动化测试呢? 按照测试金字塔理论,其实每种类型的测试都有自己的意义,UI自动化的意义就在于更贴近用 ...

最新文章

  1. 我有一个很好的思维习惯-反思
  2. java高级工程师开放面试题集二
  3. Android SDK Manager无法更新的解决方案
  4. C语言的Trim, LTrim, RTrim
  5. 配置mysql环境变量
  6. putty mtputty 设置utf8编码
  7. MyBatis3-SqlSessionDaoSupport的使用
  8. 分享大牛们的刷题经验——比你聪明的人还在拼命努力,你有什么资格浪费时间
  9. LWIP网络通信Day7实验:LWIP协议栈源码和设计学习
  10. stm32c语言写数码管定时器,【程序】STM32F103单片机使用定时器DMA进行全自动8位数码管动态扫描...
  11. webservice接口对接
  12. mac 重置 Mac 上的 NVRAM 或 PRAM
  13. sf授权php,授权系统全解源码(支持分子系统)【原完整版】
  14. 简述研究生阶段如何提高自己的学习能力
  15. Visual studio 2015(VS2015)的下载和安装,以及安装VS2015中的C++
  16. Android 系统截屏实现
  17. 用户画像分析有哪些方法可以实现?
  18. 论文阅读笔记-Gated relational stacked denoising autoencoder with localized author embedding for
  19. CVBS-复合视频广播信号[转]
  20. [:, None]的作用是什么?

热门文章

  1. 机器视觉 · 工业光源
  2. Python pass 用法
  3. 打破硬件内卷:荣耀开启高端旗舰手机智慧新赛道
  4. 统一社会信用代码(营业执照)和组织机构代码校验规则
  5. 组播域GNS3与eNSP桥接以及GNS3的使用教程
  6. 中文短文本分类实例十四-LEAM(Joint Embedding of Words and Labels for Text Classification)
  7. vue-print-nb 实现页面打印(含分页打印)
  8. Oracle Acs资深顾问罗敏 老罗技术核心感悟:11g的数据压缩技术
  9. 蓝牙mesh- Features和设备类型
  10. 腾讯云开放mysql端口_腾讯云服务器Mysql开启3306端口远程访问