我们一直在使用这样的片段来重命名 Gradle 构建生成的 APK 文件:
android.applicationVariants.all { variant ->
variant.outputs.all {
outputFileName = "${variant.name}-${variant.versionName}.apk"
}
}
来源:https ://developer.android.com/studio/build/gradle-plugin-3-0-0-migration#variant_output
我现在正在将我的转换build.gradle
为build.gradle.kts
,即转换为 Gradle Kotlin DSL。这是最后丢失的部分之一:我不知道如何访问outputFileName
.
根据 API 文档,它甚至似乎不存在:
BaseVariant.getOutputs()
返回DomainObjectCollection<BaseVariantOutput>
提供all
片段中使用的方法的 a。BaseVariantOutput
extendsOutputFile
which extendsVariantOutput
但这些都没有一个outputFileName
或任何匹配名称的 getter 或 setter。
所以,我怀疑有一些高级的 Groovy 魔法在起作用——但是我如何在 Kotlin 中实现呢?