你也可以查看我的其他同类文章,也会让你有一定的收货!
生成APK自动追加版本号
可自动区分debug和release,并追加版本号:
-
打开 build.gradle
-
在 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就是你的版本号