Unable to add Firebase Crashlytics dependencies/classpath in Android for Gradle 7.2
Where should I write.
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.0'
I successfully mapped Google services as.
classpath 'com.google.gms:google-services:4.3.10'
//to
id "com.google.gms.google-services" version "4.3.10" apply false
Getting following error if I map Crashlytics classpath
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)
Project level 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
settings.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'
I had searched a lot before posting this question but didn't find something useful.
CodePudding user response:
The documentation is not updated for the new Android project structure yet.
In your project level build.gradle
you need to add this:
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
}
Then in your app level build.gradle
at the start you need to add the plugin
plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
id 'com.google.firebase.crashlytics'
}
and then in the same file add the Crashlytics dependencies to the corresponding block:
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'
}