博观而约取,厚积而薄发。这篇文章主要讲述Android studio 自定义打包apk名相关的知识,希望能为你提供帮助。
Android
Studio打包应用默认生成的apk名称是:app-release.apk 、如果我们要让生成的apk名跟我们版本包名有联系的话,那我们就要自定义生成的apk名了
需要在build.gradle(Module:app)文件下android{ }中添加:
// apk name def android.applicationVariants.all { variant -> variant.outputs.each { output -> output.outputFile = new File(output.outputFile.parent, defaultConfig.applicationId + "-" + buildType.name + "-v" + defaultConfig.versionName + "-" + defaultConfig.versionCode + ".apk" ); } }
这样我们打包的apk名就是:com.test.demo-release-v1.01-2.apk ,就自动带上我们的包名和版本号了,省去每次都要手动自己改了。
如果要生成如下版本号时间戳的apk包名,则可以用如下build.gradle代码:
模块名-渠道名-版本号-版本名称-包名-编译时间.apk
apply plugin: \'com.android.application\'def releaseTime() { return new Date().format("yyyy-MM-dd", TimeZone.getTimeZone("UTC")) }android { compileSdkVersion 23 buildToolsVersion "23.0.1"defaultConfig { applicationId "com.djk.myapplication" minSdkVersion 14 targetSdkVersion 23 versionCode 1 versionName "1.0" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile(\'proguard-android.txt\'), \'proguard-rules.pro\' } }productFlavors{ develop{} xiaomi{} huawei{} anzhi{} }android.applicationVariants.all { variant -> variant.outputs.each { output -> def outputFile = output.outputFile if (outputFile != null & & outputFile.name.endsWith(\'.apk\')) { //这里修改apk文件名 def fileName = "demo_${variant.productFlavors[0].name}-${defaultConfig.versionCode}-${defaultConfig.versionName}-${releaseTime() }.apk" //def fileName = outputFile.name.replace("app", "${rootProject.ext.appName}-${releaseTime()}-${defaultConfig.versionCode}-${defaultConfig.versionName}")output.outputFile = new File(outputFile.parent, fileName) } } }}dependencies { compile fileTree(dir: \'libs\', include: [\'*.jar\']) testCompile \'junit:junit:4.12\' compile \'com.android.support:appcompat-v7:23.1.0\' }
效果
文章图片
【Android studio 自定义打包apk名】
推荐阅读
- Appium常见API 一
- android sdk那些不得不说的事儿~~~
- Android 软件退出系统方法重写
- 添加ionic 安卓app签名
- Android Fragment与Activity交互的几种方式
- 超好用的移动框架--Ionic--构建APP侧边栏 底部选项卡轮播图加载动画
- Android录音
- Android线程池(转)
- android 蓝牙开发---与蓝牙模块进行通讯 基于eclipse项目