如何将 Firebase Crashlytics 添加到 Android 项目中

11
在我的应用程序中,我想使用 firebase Crashlytics,为此,我将以下代码添加到我的应用程序中。
我根据谷歌文档逐步添加了这些代码!
我添加了下列代码,但在同步应用程序时出现错误,并且无法同步项目。

Build.gradle (project) :

buildscript {
    repositories {
        google()
        jcenter()
        maven { url 'https://maven.fabric.io/public' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.1'
        classpath 'com.google.gms:google-services:4.1.0'
        classpath 'io.fabric.tools:gradle:1.26.1'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven { url 'https://jitpack.io' }
        maven { url 'https://dl.bintray.com/tapsellorg/maven' }
        maven { url 'https://maven.google.com/' }
    }
}

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

Build.gradle (app) :

构建.gradle(应用):
dependencies {
    implementation 'com.google.android.gms:play-services-base:16.0.1'
    implementation 'com.google.firebase:firebase-core:16.0.6'
    implementation 'com.crashlytics.sdk.android:crashlytics:2.9.7'
}
apply plugin: 'com.google.gms.google-services'
apply plugin: 'io.fabric'

但是当添加了这一行apply plugin: 'com.google.gms.google-services'后,单击同步按钮会显示以下错误:

The library com.google.android.gms:play-services-base is being requested by various other libraries at [[11.0.2,11.0.2]], but resolves to 16.0.1. Disable the plugin and check your dependencies tree using ./gradlew :app:dependencies.

我该如何修复它?


你使用过任何jar库吗?如果是的话,请在这里发布。 - Abhay Koradiya
版本存在冲突,请尝试在所有Firebase和Google Play服务依赖项中使用相同的版本。 - Badr
如果删除 com.google.android.gms:play-services-base:16.0.1 会发生什么? - Peter Haddad
7个回答

11

build.gradle Module

apply plugin: 'com.google.gms.google-services'
apply plugin: 'com.google.firebase.crashlytics'


// add the Firebase SDK for Google Analytics
// The app need this to init in Firebase console
implementation 'com.google.firebase:firebase-analytics:17.2.1'

 // Add the Firebase SDK for Crashlytics.
implementation 'com.google.firebase:firebase-crashlytics:17.0.0-beta01'

build.gradle 项目

classpath 'com.google.firebase:firebase-crashlytics-gradle:2.0.0-beta01'

你不再需要使用fabric.io,因为它已经被弃用,并且将在2020年3月31日之前停止提供服务。可以参考这个项目视频
如果Firebase无法识别应用程序,请使用recordException记录异常。

7

在Android Studio 4.0及以上版本中,项目级别的Gradle

plugins {
    id 'com.android.application' version '7.1.0' apply false
    id 'com.android.library' version '7.1.0' apply false
    id 'org.jetbrains.kotlin.android' version '1.6.10' apply false

    
    id 'com.google.gms.google-services' version '4.3.10' apply false  // Google Services plugin
    // Crashlytics Gradle plugin
    id 'com.google.firebase.crashlytics' version '2.8.1' apply false
}

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

应用程序级别的Gradle。
plugins {
id 'com.android.application'
id 'org.jetbrains.kotlin.android'
id 'com.google.gms.google-services'
id 'com.google.firebase.crashlytics'
}



dependencies {

implementation platform('com.google.firebase:firebase-bom:30.3.2')
implementation 'com.google.firebase:firebase-analytics'
implementation 'com.google.firebase:firebase-crashlytics'
}

1
我已经按照以下步骤实现了将 Firebase Crashlytics 添加到项目中:
1.获取 google-service json 文件并完成将项目添加到 Firebase 的步骤,可参考此链接 Firebase 控制台
2.在项目的 build.gradle 文件中添加以下代码:
buildscript {
repositories {
    maven {
        url 'https://maven.fabric.io/public'
    }
    maven {
        url 'https://maven.google.com'
    }
}
 dependencies {
     // Check for v3.1.2 or higher
     classpath 'com.google.gms:google-services:4.3.2'
     // Add dependency
     classpath 'io.fabric.tools:gradle:1.31.2'
  }
}

allprojects {
  repositories {
      maven {
          url 'https://maven.google.com'
      }
      maven {
          url 'https://maven.fabric.io/public'
      }
   }
}

3. 在应用程序的 build.gradle 文件中添加以下代码:

apply plugin: 'io.fabric'
apply plugin: 'com.google.gms.google-services'

"在依赖项中添加以下内容:"
implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'

4. 触发崩溃以检查是否在Crashlytics部分的控制台中反映出来。

Crashlytics.getInstance().crash();

希望它有所帮助 :)

自2020年11月15日起,不再支持Fabric SDK。为了在Firebase控制台中继续获取崩溃报告,请确保升级到Firebase Crashlytics SDK。 https://firebase.google.com/docs/crashlytics/upgrade-sdk?platform=android - san88

0

在Firebase控制台中注册您的Android应用程序,并下载google-play-services.json,并将其粘贴到项目目录下的app文件夹中。

请按照以下步骤操作:

在项目级别的build.gradle中,添加以下依赖项:

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

在应用级别的build.gradle中,添加以下插件:

apply plugin: 'com.google.firebase.crashlytics'

在项目级别的build.gradle中,添加以下依赖项:

implementation 'com.google.firebase:firebase-analytics:17.5.0' implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'

为了检查,请添加以下代码来崩溃

Crashlytics.getInstance().crash();


0
要进入Firebase Crashlytics,您需要做的第一件事是按照以下简单步骤操作:
在应用程序-> build.gradle中:
apply plugin: 'io.fabric'
dependencies {
 implementation "com.google.firebase:firebase-core:17.2.0"
// Add dependency
implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
}

通常在 build.gradle 文件中:
buildscript {

repositories {

    maven {
        url 'https://maven.fabric.io/public'
    }
}
dependencies {
    classpath 'io.fabric.tools:gradle:1.31.2'  // Crashlytics plugin
}

显然,在此之后,将json文件插入到您的项目文件夹中,以将应用程序连接到Firebase enter image description here

为了进行第一次测试并评估是否一切正常工作,您不需要初始化任何内容,因为Crashlytics具有单例。因此,请转到您的应用程序的主屏幕而不是Application(否则它将无法工作),并尝试以下操作:

Crashlytics.getInstance().crash();

测试完成后,请前往您的应用程序的 Firebase 面板,然后单击 Crashlytics 按钮


-1

您不需要任何依赖项或.jar文件来添加Crashlytics到您的应用程序中,只需按照以下步骤操作,如果遇到任何错误,请告诉我。 将Google Analytics for Firebase的依赖项添加到您的应用程序级build.gradle文件中:

implementation 'com.google.firebase:firebase-core:16.0.6'

在此之后,在您的活动顶部声明com.google.firebase.analytics.FirebaseAnalytics对象:
private FirebaseAnalytics mFirebaseAnalytics;

然后在onCreate()方法中初始化它:

// Obtain the FirebaseAnalytics instance.
mFirebaseAnalytics = FirebaseAnalytics.getInstance(this);

关于如何集成Crashlytics,更多信息请参考Firebase官方文档(https://firebase.google.com/docs/analytics/android/start)。

注意:Firebase库不匹配可能会导致Gradle编译错误。


那么我在哪里可以监控所有的崩溃呢? - Shahjad Ans Sunny
所有崩溃信息都将显示在 Firebase 控制台上,您可以从左侧菜单中的 Crashlytics 部分访问它们。 - rajat singh
根据路线图,新的Firebase SDK还没有准备好,他们建议继续使用crashlytics/fabric.io变体。请参阅路线图:https://get.fabric.io/roadmap#the-roadmap - arberg

-2
  • 在你的 build.gradle 中添加:

    buildscript {
    repositories {
    
    // 添加 Google 的 Maven 仓库。
    google()
    
    maven {
       url 'https://maven.fabric.io/public'
    }
    }
    
    dependencies {
    // ...
    
    // 添加 Google Services 插件(检查是否为 v3.1.2 或更高版本)。
    classpath 'com.google.gms:google-services:4.3.3'
    
    // 添加 Fabric Crashlytics 插件。
    classpath 'io.fabric.tools:gradle:1.31.2'
    
    }
    }
    
  • 在应用级别的 build.gradle 中添加:

    apply plugin: 'com.android.application'
    apply plugin: 'com.google.gms.google-services'
    // 添加 Fabric 插件。
    apply plugin: 'io.fabric'
    
    dependencies {
    // ...
    
    // (推荐)添加 Google Analytics 依赖项。
    implementation 'com.google.firebase:firebase-analytics:17.2.3'
    
    // 添加 Firebase Crashlytics 依赖项。
    implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'
    }
    
  • 将应用级别的 build.gradle 中的 minSdk 版本更改为16。
  • 您可以通过此链接详细了解如何连接到Crashlytics http://blogssolutions.co.in/android-app-add-firebase-crashlytics/


    网页内容由stack overflow 提供, 点击上面的
    可以查看英文原文,
    原文链接