firebase 如何将Crashlytics添加到Google的新架构示例中

rbl8hiat  于 2023-01-14  发布在  Go
关注(0)|答案(2)|浏览(130)

我正在开始一个新的项目,使用谷歌的架构模板(https://github.com/android/architecture-templates
在这个模板中,他们使用了Gradle和Kotlin DSL。我试图在这个项目中添加Crashlytics,但是Gradle的结构和我以前的项目有很大的不同。
我卡在了基础指南的步骤2(Firebase入门文档)上
解析插件[id:"com. android.应用程序",版本:"第7.3.1条"]
无法满足对该插件的请求,因为该插件已位于未知版本的类路径中,因此无法检查兼容性。
有什么建议吗?

plicqrtu

plicqrtu1#

经过一番研究,我发现该架构模板基于使用版本目录功能的Gradle 7.6。
因此,我的版本目录文件基于此https://github.com/RedMadRobot/gradle-version-catalogs/blob/main/versions-stack/libs.versions.toml
现在我的build.gradle.kts文件是

plugins {
    alias(libs.plugins.android.application)
    alias(libs.plugins.kotlin.android)
    alias(libs.plugins.kotlin.kapt)
    alias(libs.plugins.hilt.gradle)
    alias(libs.plugins.firebase.crashlitycs)
    alias(libs.plugins.gms.googleServices)
}

....

dependencies {

implementation(platform(libs.firebase.bom))
implementation(libs.firebase.crashlytics)
implementation(libs.firebase.analytics)
}
qqrboqgw

qqrboqgw2#

我以前也对此感到困惑,但经过几次尝试,我找到了正确的答案。
我认为这是第2步中您感到困惑的第一点。只需在项目级build.gradle的顶部添加以下代码:

buildscript {
    dependencies {
        classpath 'com.google.gms:google-services:4.3.14'
    }
}

剩下的就按照谷歌指南来做吧。
完整代码:

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    dependencies {
        classpath 'com.google.gms:google-services:4.3.14'
    }
}

plugins {
    id 'com.android.application' version '7.2.2' apply false
    id 'com.android.library' version '7.2.2' apply false
    id 'org.jetbrains.kotlin.android' version '1.7.10' apply false
}

task clean(type: Delete) {
    delete rootProject.buildDir
}
    • 编辑日期:**

DSL版本:

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    dependencies {
        classpath("com.google.gms:google-services:4.3.14")
        classpath("com.google.firebase:firebase-crashlytics-gradle:2.9.2")
    }
}

plugins {
    id("com.android.application") version "7.2.2" apply false
    id("com.android.library") version "7.2.2" apply false
    id("org.jetbrains.kotlin.android") version "1.7.10" apply false
}

tasks.register("clean", Delete::class) {
    delete(rootProject.buildDir)
}

这个网站(Gradle Kotlinize - Groovy to Kotlin converter online)也许能帮助你。

相关问题