Android Studio编译输出apk文件修改文件名

  • A+
所属分类:Android开发

新建一个Android工程,默认编译会生成一个叫app-debug.apk或者叫app-release.apk文件,说实话,单纯看文件名,我都不到任何有用的信息,我希望输出的文件名是这样的:

模块名-渠道名-版本号-版本名称-包名-编译时间.apk

当然,这只是举一个例子,可能不需要那么长,具体需要什么就加什么。

实现

通过build.gradle来做,具体看代码

  1. apply plugin: 'com.android.application'
  2. def releaseTime() {
  3.     return new Date().format("yyyy-MM-dd", TimeZone.getTimeZone("UTC"))
  4. }
  5. android {
  6.     compileSdkVersion 23
  7.     buildToolsVersion "23.0.1"
  8.     defaultConfig {
  9.         applicationId "com.djk.myapplication"
  10.         minSdkVersion 14
  11.         targetSdkVersion 23
  12.         versionCode 1
  13.         versionName "1.0"
  14.     }
  15.     buildTypes {
  16.         release {
  17.             minifyEnabled false
  18.             proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
  19.         }
  20.     }
  21.     productFlavors{
  22.         develop{}
  23.         xiaomi{}
  24.         huawei{}
  25.         anzhi{}
  26.     }
  27.     android.applicationVariants.all { variant ->
  28.         variant.outputs.each { output ->
  29.             def outputFile = output.outputFile
  30.             if (outputFile != null && outputFile.name.endsWith('.apk')) {
  31.                 //这里修改apk文件名
  32.                 def fileName = "demo_${variant.productFlavors[0].name}-${defaultConfig.versionCode}-${defaultConfig.versionName}-${releaseTime() }.apk"
  33.                 output.outputFile = new File(outputFile.parent, fileName)
  34.             }
  35.         }
  36.     }
  37. }
  38. dependencies {
  39.     compile fileTree(dir: 'libs', include: ['*.jar'])
  40.     testCompile 'junit:junit:4.12'
  41.     compile 'com.android.support:appcompat-v7:23.1.0'
  42. }

 


看看效果

1466414667-4988-697635-a9bba0c8a0fe4d68

     生成apk

好了,是不是看着好很多。

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: