VersionBuilder
介绍
基于Grovvy语言编写的Gradle插件,旨在解决应用apk在发布打包时,无法与git(svn)版本控制工程提交记录对应的问题。 这样做的主要目的是,在多渠道或复杂项目管理中,历史版本问题回溯排查方便。
原理
通过插件的方式,在Android工程构建编译时,hook资源合并过程,并将git(或svn)信息保存在合并后的apk中,不影响打包流程。
源码地址:VersionBuilder: 基于Grovvy语言编写的Gradle插件,旨在解决应用apk在发布打包时,无法与git(svn)版本控制工程提交记录对应的问题
使用方式
- 添加依赖
dependencies { ...... classpath 'cn.jarlen.android.plugin:ApkPgVerPlugin:1.1.2' ...... }
- 在主Module的.gradle文件引入脚本
apply plugin: 'apk-build-ver-plugin'
- 效果
在打包时将如下信息以文件的形式存放在./assets/应用包名.version中(暂不支持更换路径)。
字段 | 说明 |
builder | local:本地构建 Jenkins: 远程Jenkins构建;例如 Jenkins build by jarlen |
codeBranch | 代码分支名称(SVN工程暂不支持) |
application | 应用包名(applicationId) |
codeSHA | 最后一次提交代码SHA值 |
repManager | GIT:git代码控制工程 SVN:svn代码控制工程 DEFAULT:默认 |
repUrl | 仓库地址 |
verName | 应用版本名称VersionName |
verCode | 应用版本号VersionCode |