【问题标题】:How to get Firebase App Distribution to work for different flavors with Kotlin DSL?如何使用 Kotlin DSL 让 Firebase App Distribution 适用于不同的风格?
【发布时间】:2020-10-16 21:44:54
【问题描述】:

我对 Firebase 分发配置有疑问。这是我在 Kotlin DSL 中的 build.gradle 的一部分

flavorDimensions("dim")
productFlavors {
    
    create("fl1") {
        applicationIdSuffix = ".fl1"
        setDimension("dim")
        firebaseAppDistribution {
            releaseNotes = "$name"
            groups = "group-fl1"
        }
    }

    create("fl2") {
        applicationIdSuffix = ".fl2"
        setDimension("dim")
        firebaseAppDistribution {
            releaseNotes = "$name"
            groups = "group-fl2"
        }
    }

}

风味 1 和风味 2 已上传到 2 个不同的 Firebase 项目 - 因此我有两个 google-services.json 文件:src/fl1 和 src/fl2。

根据观察,Firebase App Distribution 插件始终使用第二个 firebaseDistribution 块中的配置。看起来这没有设置为风味,而是全局设置。 例如,当我调用 assembleFl1Debug appDistributionUploadFl1Debug 时,正确的 .apk 位于正确的 Firebase 项目中,但发行说明和组都不正确。 有人遇到过类似问题吗?

【问题讨论】:

    标签: android gradle-kotlin-dsl firebase-app-distribution


    【解决方案1】:

    我向 Firebase 支持报告了这个问题,并刚刚收到确认这是错误,但尚未安排解决方法或修复日期 :( 这仅涉及用 Kotlin DSL 编写的 build.gradle 文件。

    【讨论】:

    • 你有那个错误报告的链接吗?
    • 否,Firebase 支持通过电子邮件处理此问题。我可以转发你他们的消息。现在我们不得不使用 CLI 来让 Kotlin DSL 工作
    【解决方案2】:

    这是一个错误,但在修复之前,您可以使用:而不是 firebaseAppDistribution { ... }:

    configure<AppDistributionExtension> {
      ...
    }
    

    这样您就可以进行不会被覆盖的动态配置。

    【讨论】:

    • 这具有完全相同的结果。显然,分发配置落在 Gradle KTS 上的最后一个配置:|
    猜你喜欢
    • 2021-10-06
    • 1970-01-01
    • 2022-09-23
    • 2017-06-26
    • 1970-01-01
    • 2019-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多