android - Fabric Beta 发行说明和 Gradle Kotlin DSL

标签 android gradle kotlin google-fabric gradle-kotlin-dsl

如此处所述:https://docs.fabric.io/android/beta/gradle.html

我曾经在 Android 应用程序的 build.gradle 中使用这两行代码将构建上传到 Fabric Beta,并使用给定组别名的给定发行说明:

android {
    defaultConfig {
        ext.betaDistributionReleaseNotesFilePath = 'app/release_notes.txt'
        ext.betaDistributionGroupAliasesFilePath = 'app/group_aliases.txt'
    }
}

将 build.gradle 文件迁移到 Kotlin Gradle DSL 后,这两行变为:

android {
    defaultConfig {
        ext.set("betaDistributionReleaseNotesFilePath", "app/release_notes.txt")
        ext.set("betaDistributionGroupAliasesFilePath", "app/group_aliases.txt")
    }
}

但它们不再有效:所有发布到 Fabric Beta 的构建都带有空白的发行说明,并且没有组别名。

我尝试了几种替代语法来设置额外的属性:

val betaDistributionReleaseNotesFilePath by extra { "app/release_notes.txt" }

ext["betaDistributionReleaseNotesFilePath"] = "app/release_notes.txt")

extra.set("betaDistributionReleaseNotesFilePath", "app/release_notes.txt")

project.ext.set("betaDistributionReleaseNotesFilePath", "app/release_notes.txt")

但结果不会改变。

添加并运行定义为的调试任务:

tasks.create("myTask") {
    dependsOn("assembleDebug", "crashlyticsUploadDistributionDebug")

    doLast {

        val a = ext["betaDistributionReleaseNotesFilePath"]
        val b = ext["betaDistributionGroupAliasesFilePath"]

        println("ReleaseNotes: $a")
        println("GroupAliases: $b")
    }
}

打印:

ReleaseNotes: app/release_notes.txt
GroupAliases: app/group_aliases.txt

仅当使用 project.ext.set() 设置了额外的属性,但上传的构建仍然有空白的发行说明且没有组别名时。

我哪里错了?

最佳答案

你可以使用:

 configure<CrashlyticsExtension> {

            betaDistributionReleaseNotes = "xxx"
        }

关于android - Fabric Beta 发行说明和 Gradle Kotlin DSL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52891699/

相关文章:

android - 失败 : Build failed with exception

gradle - Gradle:构建使用相同组件的多个应用程序(多项目构建)

java - Gradle 构建旧版本代码

kotlin - 如何在 ktor Kotlin 中创建具有虚拟值的 HttpResponse 对象?

java - 参数 'imagePath'此处未初始化

Android 抽屉导航图标的颜色

java - 获取数组列表的中位数长度

android - 如何在 Android 中强制蓝牙 LE "Just Works"配对

Android 短信拦截无通知图标或 WAP-PUSH 消息

Android:尝试使用数据绑定(bind)设置 CardView 的布局权重