无法为 Gradle 版本 7.2 添加 Firebase Crashlytics

问题描述 投票:0回答:6

无法在 Android 中为 Gradle 7.2 添加 Firebase Crashlytics 依赖项/类路径

我应该写在哪里。

classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.0'

我成功将 Google 服务映射为。

    classpath 'com.google.gms:google-services:4.3.10'    
    //to
    id "com.google.gms.google-services" version "4.3.10" apply false

如果我映射 Crashlytics 类路径,则会出现以下错误

Exception is:
org.gradle.api.plugins.UnknownPluginException: Plugin [id: 'com.google.firebase.firebase-crashlytics-gradle', version: '2.9.0', apply: false] was not found in any of the following sources:

- Gradle Core Plugins (plugin is not in 'org.gradle' namespace)
- Plugin Repositories (could not resolve plugin artifact 'com.google.firebase.firebase-crashlytics-gradle:com.google.firebase.firebase-crashlytics-gradle.gradle.plugin:2.9.0')
  Searched in the following repositories:
    Gradle Central Plugin Repository
    Google
    MavenRepo
    BintrayJCenter
    maven(https://jitpack.io)

项目级别Gradle

plugins {
    id 'com.android.application' version '7.1.2' apply false
    id 'com.android.library' version '7.1.2' apply false
    id 'org.jetbrains.kotlin.android' version '1.5.30' apply false
    id "com.google.gms.google-services" version "4.3.10" apply false
    // below line has a problem
    id 'com.google.firebase.firebase-crashlytics-gradle' version '2.9.0' apply false

}

task clean(type: Delete) {
    delete rootProject.buildDir
}

dependencies {

}

Gradle-wrapper.properties

#Thu May 12 10:12:33 PKT 2022
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME

设置.gradle

pluginManagement {
    repositories {
        gradlePluginPortal()
        google()
        mavenCentral()
        jcenter()
        maven { url 'https://jitpack.io' }

    }
}
dependencyResolutionManagement {
    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
    repositories {
        google()
        mavenCentral()
        jcenter()
        maven { url 'https://jitpack.io' }

    }
}
rootProject.name = "Video Player"
include ':app'

在发布这个问题之前我已经搜索了很多,但没有找到有用的东西。

android android-gradle-plugin crashlytics android-gradle-7.0
6个回答
34
投票

将其添加到 root 项目

build.gradle
文件中:

plugins {
    id 'com.google.gms.google-services' version '4.3.10' apply false
    id 'com.google.firebase.crashlytics' version '2.9.1' apply false
    .... some other plugins
}

接下来,将其添加到 app 模块

build.gradle
文件中:

plugins {
    id 'com.google.gms.google-services'
    id 'com.google.firebase.crashlytics'
    .... some others plugins
}

最后,将其添加到app模块

build.gradle
文件中:

dependencies {
    implementation platform('com.google.firebase:firebase-bom:30.3.1')
    implementation 'com.google.firebase:firebase-crashlytics-ktx'
    implementation 'com.google.firebase:firebase-analytics-ktx'
    ... some other dependencies
}

现在,强制您的应用程序崩溃,如下所示:

throw RuntimeException("Crashlytics Test")

检查您的 Firebase 控制台

完成!


29
投票

新的 Android 项目结构的文档尚未更新。

在您的项目级别

build.gradle
您需要添加以下内容:

buildscript {
  //other things....
  dependencies {
    classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.0'
  }
}

// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
  id 'com.android.application' version '7.2.1' apply false
  id 'com.android.library' version '7.2.1' apply false
  id 'org.jetbrains.kotlin.android' version '1.6.20' apply false
  id "com.google.gms.google-services" version "4.3.10" apply false
}

task clean(type: Delete) {
  delete rootProject.buildDir
}

然后在您的应用程序级别

build.gradle
开始时您需要添加插件

plugins {
  id 'com.android.application'
  id 'org.jetbrains.kotlin.android'
  id 'com.google.firebase.crashlytics'
}

然后在同一个文件中将 Crashlytics 依赖项添加到相应的块中:

dependencies {
   //... other dependencies
   implementation platform('com.google.firebase:firebase-bom:30.1.0')

   implementation 'com.google.firebase:firebase-crashlytics-ktx'
   implementation 'com.google.firebase:firebase-analytics-ktx'
}

7
投票

你应该这样使用

   id 'com.google.firebase.crashlytics' version '2.9.2' apply false

5
投票

在项目的 build.gradle 中:

buildscript {
    ...
    ext.crashlytics_version = '2.9.1'
}

plugins {
    ...
    id 'com.google.firebase.crashlytics' version "$crashlytics_version" apply false
}

然后在应用程序的 build.gradle 中应用插件:

plugins {
    ...
    id 'com.google.firebase.crashlytics'
}

0
投票

使用 Kotlin 库,即使您使用的是 Java:

...
implementation platform('com.google.firebase:firebase-bom:30.3.1')
implementation 'com.google.firebase:firebase-crashlytics-ktx'
implementation 'com.google.firebase:firebase-analytics-ktx'
...

0
投票

最简单的方法就是让Android Studio帮你添加。

确保删除之前尝试添加的所有代码,然后:

工具 -> Firebase -> Crashlytics -> Firebase Crashlytics 入门

应该有一个按钮可以添加所需的代码。

© www.soinside.com 2019 - 2024. All rights reserved.