我知道可以通过在Gradle构建文件中使用以下命令来指定APK名称:
setProperty("archivesBaseName", "something")
这里有很多问题可以解决这个问题。但这样做也会导致APK具有附加名称的风味和构建变体。因此,使用上面的命令会导致名为something-dev-debug.apk
的APK。
有没有办法在不附加任何后缀的情况下完全指定文件名。我已经有了这样的风格:
//...
productFlavors {
dev {
applicationId "com.myapp.dev"
setProperty("archivesBaseName", applicationId)
}
//...
理想情况下,我想制作名为com.myapp.dev.apk
的APK,不带任何额外的后缀或版本号。这可能吗?
答案 0 :(得分:1)
似乎不应该使用setPropery
来完成此操作。您可以通过将以下代码添加到gradle文件中android { }
部分的末尾来定义更改输出文件名的处理程序作为最后一步:
applicationVariants.all { variant ->
variant.outputs.each { output ->
def file = output.outputFile
def appId = variant.applicationId
def fileName = appId +".apk"
output.outputFile = new File(file.parent, fileName)
}
}