之前沒有設置過打包的命名,每次打包都是默認的"app-realease.apk",之后手動修改名字來顯示出它是一個新版本。
晚上學習了如何配置打包名稱,很簡單,修改build.gradle里的代碼就行。
詳細記錄如下:
1、打開app這個directory下的build.gradle
2、定義打包時間:
//時間def releaseTime() {  return new Date().format("yyyyMMdd", TimeZone.getTimeZone("UTC"))}3、自定義發布時的版本號(return的返回值可自行修改,例如1.0、2.0):
//版本號def getVersionName(){  return "2.0"}4、自定義打包名稱(代碼中的XYZ可修改為app名字):
//名稱  applicationVariants.all { variant ->    variant.outputs.each { output ->      def outputFile = output.outputFile      def fileName      if (outputFile != null && outputFile.name.endsWith('.apk')) {        if (variant.buildType.name.equals('release')) {          variant.mergedFlavor.versionName = getVersionName()          fileName = "XYZ_${variant.mergedFlavor.versionName}_release.apk"        } else if (variant.buildType.name.equals('debug')) {          variant.mergedFlavor.versionName = getVersionName()+"."+releaseTime()          fileName = "XYZ_${variant.mergedFlavor.versionName}_debug.apk"        }        output.outputFile = new File(outputFile.parent, fileName)      }    }  }5、build.gradle的完整代碼:
apply plugin: 'com.android.application'//定義時間def releaseTime() {  return new Date().format("yyyyMMdd", TimeZone.getTimeZone("UTC"))}//設置發布時的版本號def getVersionName(){  return "2.0"}android {  compileSdkVersion 26  buildToolsVersion "26.0.0"  defaultConfig {    applicationId "***"    minSdkVersion 14    targetSdkVersion 23    versionCode 1    testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"  }  buildTypes {    release {      buildConfigField("boolean","API_DEBUG","false")      minifyEnabled false      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'    }    debug {      buildConfigField("boolean","API_DEBUG","true")      minifyEnabled false      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'    }  }  //配置打包名稱  applicationVariants.all { variant ->    variant.outputs.each { output ->      def outputFile = output.outputFile      def fileName      if (outputFile != null && outputFile.name.endsWith('.apk')) {        if (variant.buildType.name.equals('release')) {          variant.mergedFlavor.versionName = getVersionName()          fileName = "XYZ_${variant.mergedFlavor.versionName}_release.apk"        } else if (variant.buildType.name.equals('debug')) {          variant.mergedFlavor.versionName = getVersionName()+"."+releaseTime()          fileName = "XYZ_${variant.mergedFlavor.versionName}_debug.apk"        }        output.outputFile = new File(outputFile.parent, fileName)      }    }  }}dependencies {  compile fileTree(dir: 'libs', include: ['*.jar'])  androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {    exclude group: 'com.android.support', module: 'support-annotations'  })}總結
以上所述是小編給大家介紹的Android打包版本號設置方法,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!
新聞熱點
疑難解答