项目场景:
配置apk生成之后的名称,并且重新修改apk生成路径
解决方案:
提示:
1、gradle中修改apk生成名称
2、将构建的apk拷贝到新的文件路径中
定义生成apk名称和当前时间
// 定义应用名称
def appName = "Example"
static def packageTime() {
return new SimpleDateFormat("yyyy-MM-dd").format(new Date())
}
修改apk名称:格式Example-2022-04-26-debug/release.apk,根据当前编译环境决定是debug或者release
// 修改apk的名称,并且指定输出路径
android.applicationVariants.all { variant ->
variant.outputs.all {
// 格式:Example-2022-04-26-debug/release.apk
outputFileName = "${appName}-${packageTime()}-${variant.buildType.name}.apk"
}
}
修改apk的输出路径
// 打包完成之后,将apk复制到指定目录
// 生成在Project根目录,就是跟app同级
def outputFilePath = "${rootDir.absolutePath}/apk/$appName/${variant.buildType.name}"
File outputFile = new File(outputFilePath)
variant.assemble.doLast {
copy {
variant.outputs.all { file ->
copy {
from file.outputFile
into outputFile
}
}
}
}
修改名称之后,并且修改输出路径完整配置
// 定义应用名称
def appName = "Gesture"
static def packageTime() {
return new SimpleDateFormat("yyyy-MM-dd").format(new Date())
}
android {
// 修改apk的名称,并且指定输出路径
android.applicationVariants.all { variant ->
variant.outputs.all {
outputFileName = "${appName}-${packageTime()}-${variant.buildType.name}.apk"
}
// 打包完成之后,将apk复制到指定目录
def outputFilePath = "${rootDir.absolutePath}/apk/$appName/${variant.buildType.name}"
File outputFile = new File(outputFilePath)
variant.assemble.doLast {
copy {
variant.outputs.all { file ->
copy {
from file.outputFile
into outputFile
}
}
}
}
}
}