首页 文章

Fabric Beta发行说明和Gradle Kotlin DSL

提问于
浏览
2

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

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

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

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

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() 设置了额外属性时,仍然上传的版本具有空白发行说明且没有组别名 .

我错了什么?

1 回答

  • 1

    你能告诉我们:

    configure<CrashlyticsExtension> {
    
                betaDistributionReleaseNotes = "xxx"
            }
    

相关问题