你也可以查看我的其他同类文章,也会让你有一定的收货!

生成APK自动追加版本号

可自动区分debug和release,并追加版本号:

  1. 打开 build.gradle

  2. 在 android 节点中插入下面代码

第一种:

   applicationVariants.all{ variant->
variant.outputs.each { output->
def oldFile = output.outputFile
def newName = '';
if(variant.buildType.name.equals('release')){
// println(variant.productFlavors[0].name)
// def releaseApkName = 'study-' + defaultConfig.versionName + '-luckpan.apk'
def releaseApkName = defaultConfig.applicationId + "-" + buildType.name + "-" + defaultConfig.versionName + '.apk'
output.outputFile = new File(oldFile.parent, releaseApkName)
}
if(variant.buildType.name.equals('beta')){
newName = oldFile.name.replace(".apk", "-v" + getVersionNameFromManifest() + "-build" + getDate() + ".apk")
output.outputFile = new File(oldFile.parent, newName)
}
if(variant.buildType.name.equals('debug')){ }
}
}

第二种:

把productFlavors名字和 buildType名字,打包到apk文件名中

android.applicationVariants.all { variant ->
variant.outputs.each { output ->
output.outputFile = new File(output.outputFile.parent,
defaultConfig.applicationId + "-" + buildType.name + "-v" +
defaultConfig.versionName "-" + variant.productFlavors.name + "-" + defaultConfig.versionCode +
".apk" );
}
}

groovy语言执行的最后一行是返回值

  • 函数 getVersionNameFromManifest(),从manifest文件中读取的版本号

  • 版本号定义在build.gradle中,那defaultConfig.versionName就是你的版本号

Android Studio生成APK自动追加版本号、自定义apk名称、指定签名证书文件的更多相关文章

  1. Android Studio生成签名文件,自动签名,以及获取SHA1和MD5值

    转载请标明出处:http://blog.csdn.net/donkor_/article/details/53487133 前言: 作为谷歌在2013年为开发者提供的IDE环境工具Android St ...

  2. Android Studio Gradle 多渠道自动打包,动态修改HostUrl,签名apk,混淆配置详解

    文/ skay csdn博客:http://blog.csdn.net/sk719887916/article/details/40541163 最近遇到项目从Eclispe迁移到Android st ...

  3. Android Studio生成APK自动追加版本号

    转载说明 本篇文章可能已经更新,最新文章请转:http://www.sollyu.com/android-apk-studio-generated-automatically-appends-a-ve ...

  4. ubuntu下android studio生成的unaligned apk的zipalign处理

    在ubuntu系统中使用android studio生成的apk文件始终都是unaligned apk, 在bulid.gradle中设置如下设置后,还是同样生成的是unaligned apk. mi ...

  5. Android Studio(十一):代码混淆及打包apk

    Android Studio相关博客: Android Studio(一):介绍.安装.配置 Android Studio(二):快捷键设置.插件安装 Android Studio(三):设置Andr ...

  6. Android Studio生成javadoc出错的解决办法

    一般使用Android Studio生成javadoc会有两个问题: 空指针异常 文档乱码 解决办法如下: 第1个问题:Tools --> Generate JavaDoc -->打开对话 ...

  7. Android Studio生成keystore签名文件步骤讲解

    Android App打包时要用到签名文件,Android Studio生成签名文件步骤如下: Build---Generate Signed Apk...如图: 如果你的project中有2个或者2 ...

  8. Android Studio如何配置CURL指令一键打包apk上传至蒲公英

    Android Studio如何配置CURL指令一键打包apk上传至蒲公英 第一步:在所需要打包的模块build.gradle文件中加入如下代码: android{ buildTypes { //配置 ...

  9. Android Studio 生成 keystore 签名文件

    Android Studio 生成 keystore 签名文件 常见 SSL 证书格式 : .DER .CER,文件是二进制格式,只保存证书,不保存私钥. .PEM,一般是文本格式,可保存证书,可保存 ...

随机推荐

  1. 1210笔记//关于导航实例-QQ空间//导航实例-storyboard实现//控制器的生命周期//控制器的生命周期方法

      一.利用storyboard完成导航1.storyboard中用来跳转的每一根线 都是 一个 UIStoryboardSegue对象1> 自动跳转 (从 某个按钮 拖线到 下一个目的控制器) ...

  2. [vue-router] Failed to resolve async component default: Error: Loading chunk 0 failed.

    在整合laravel5.4 和vue2.1的时候遇到一个奇怪的问题 Uncaught SyntaxError: Unexpected token < Error: Loading chunk 0 ...

  3. phpstorm调试环境XDebug搭建

    1.安装XDebug,通过phpinfo()可以看到xdebug是否已安装!!!如果未安装,可以先看我的另一篇关于XDebug安装的文章:http://www.cnblogs.com/cxscode/ ...

  4. 《JAVA8实战》读书笔记之传递方法和传递lambda

    传递方法: 假设 你有一个Apple类,它 有一个getColor方法,还有一个变量inventory保存着一个Apples的列表.你可能想要选出所 有的绿苹果,并返回一个列表.通常我们用筛选(fil ...

  5. “pip failed to create process”的问题

    增加python -m的方法能完美解决pip,easy_install 安装时报错:“pip failed to create process”的问题,据推测应该是64bit操作系统下会是如此. Wi ...

  6. 【转】requests、BeautifulSoup使用总结

    转自,https://www.cnblogs.com/wupeiqi/articles/6283017.html  ---- Python标准库中提供了:urllib.urllib2.httplib等 ...

  7. Windows7 SP1旗舰版精简版最终版本

    2016年6月9号,老毛子@lopatkin大神针对Win7 SP1旗舰版精简版进行了最终更新,此次主要是之前小问题的修复和调整.该版为Windows 7 SP1 简体中文旗舰版最新版,包含2016年 ...

  8. ACM-ICPC国际大学生程序设计竞赛北京赛区(2017)网络赛

    编号 名称 通过率 通过人数 提交人数 A√水题(队友写的 Visiting Peking University 91% 1122 1228 B— Reverse Suffix Array 57% 6 ...

  9. 欧拉图和欧拉圈-Play On Words(UVa10129)

    欧拉路和欧拉圈,简言之就是,从无向图的一个结点出发,走一条路/圈,每条边恰好经过一次,即一笔画问题 欧拉定理:一个无向图最多只有两个奇结点,那么我们就从一个奇结点出发,到另一个结点为之,一定有一条欧拉 ...

  10. Android学习--跨程序共享数据之内容提供其探究

    什么是内容提供器? 跨程序共享数据之内容提供器,这是个什么功能?看到这个名称的时候最能给我们提供信息的应该是“跨程序”这个词了,是的重点就是这个词,这个内容提供器的作用主要是用于在不同的引用程序之间实 ...