我想更改输出.apk文件的名称。但是,我希望根据构建类型添加“-debug”或“-release”。
以下是我想要的输出名称: MyApp的-0.0.1-debug.apk MyApp的-0.0.1-release.apk
我不熟悉Gradle并且还没有找到如何执行此操作,我知道我只需要在以下代码中访问buildType但无法找到如何执行此操作。
目前,无论buildType如何,我的输出都是“MyApp-0.0.1.apk”。如何更改以下代码以更改此内容?
android.libraryVariants.all { variant ->
variant.outputs.each { output ->
def outputFile = output.outputFile
if (outputFile != null && outputFile.name.endsWith('.aar')) {
def fileName
def bType = ""
// bType = "-" + something.buildType
fileName = "${archivesBaseName}-${project.version}${bType}.aar"
output.outputFile = new File(outputFile.parent, fileName)
}
}
}
答案 0 :(得分:3)
构建类型是变体的一部分;你正在迭代循环中的所有变体。您可以通过以下方式获取构建类型名称:
variant.buildType.name
您可以在http://tools.android.com/tech-docs/new-build-system/user-guide
找到(部分完整的)API文档答案 1 :(得分:1)
对于任何迟到的人,此版本将于 2020年4月为我使用。
只需将此代码放在您的buildTypes
元素内(android
或defaultConfig
也可以工作)。
applicationVariants.all { variant ->
def customBuildName = ""
if(variant.buildType.name == "release") customBuildName = "release-name.apk"
else customBuildName = "build-name.apk"
variant.outputs.all {
outputFileName = customBuildName
println("name of ${variant.buildType.name} build is ${outputFileName}")
}
}