相关疑难解决方法(0)

如何在Kotlin中访问variant.outputFileName

我们一直在使用像这样的代码片段来重命名由Gradle构建生成的APK文件:

android.applicationVariants.all { variant ->
    variant.outputs.all {
        outputFileName = "${variant.name}-${variant.versionName}.apk"
    }
}
Run Code Online (Sandbox Code Playgroud)

来源:https : //developer.android.com/studio/build/gradle-plugin-3-0-0-migration#variant_output

我现在在我的转换的过程中build.gradlebuild.gradle.kts,即到摇篮科特林DSL。这是最后缺少的部分之一:我不知道如何访问outputFileName

根据API文档,它似乎甚至不存在:

  • BaseVariant.getOutputs()返回,DomainObjectCollection<BaseVariantOutput>其中提供all了代码段中使用的方法。
  • BaseVariantOutput扩展OutputFileVariantOutput但没有一个outputFileName具有匹配名称的getter或setter。

因此,我怀疑有一些先进的Groovy魔术可以使它起作用-但是我如何在科特林到达那里?

gradle kotlin android-gradle-plugin gradle-kotlin-dsl

6
推荐指数
3
解决办法
1063
查看次数