Premiers pas avec Firebase Crashlytics


Ce guide de démarrage rapide explique comment configurer Firebase Crashlytics dans votre application avec le SDK Firebase Crashlytics pour obtenir un plantage complet dans la console Firebase. Avec Crashlytics pour Android, vous recevez des rapports sur les plantages, les erreurs non fatales et les erreurs ANR (l'application ne répond pas).

Pour configurer Crashlytics, vous devez effectuer des tâches dans la console Firebase et votre IDE (par exemple, en ajoutant un fichier de configuration Firebase et le fichier Crashlytics SDK). Pour terminer la configuration, vous devez forcer un plantage test afin d'envoyer votre premier le rapport d'erreur à Firebase.

Avant de commencer

  1. Si ce n'est pas encore fait, ajoutez Firebase à votre projet Android. Si vous ne possédez pas d'application Android, vous pouvez télécharger un exemple d'application.

  2. Recommandé: Pour obtenir automatiquement journaux de fil d'Ariane pour comprendre les actions des utilisateurs ayant entraîné un plantage, une erreur non fatale ou une erreur ANR, vous devez activer Google Analytics dans votre projet Firebase.

    • Si votre projet Firebase existant ne comporte pas de ressources Google Analytics vous pouvez activer Google Analytics depuis la Intégrations de votre > Paramètres du projet dans la console Firebase.

    • Si vous créez un projet Firebase, activez Google Analytics au cours du workflow de création du projet.

  3. Assurez-vous que votre application dispose des versions minimales requises suivantes :

    • Gradle 8.0
    • Plug-in Android Gradle 8.1.0
    • Plug-in Gradle des services Google 4.4.1

Étape 1 : Ajouter le SDK Crashlytics à votre application

Dans le fichier Gradle de votre module (au niveau de l'application) (généralement <project>/<app-module>/build.gradle.kts ou <project>/<app-module>/build.gradle), Ajoutez la dépendance pour la bibliothèque Crashlytics pour Android. Nous vous recommandons d'utiliser Firebase Android BoM pour contrôler la gestion des versions des bibliothèques.

Pour profiter des journaux de fil d'Ariane, ajoutez également le SDK Firebase pour Google Analytics à votre application. Assurez-vous que Google Analytics est activé dans votre projet Firebase.

dependencies {
    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:33.3.0"))

    // Add the dependencies for the Crashlytics and Analytics libraries
    // When using the BoM, you don't specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-crashlytics")
    implementation("com.google.firebase:firebase-analytics")
}

En utilisant Firebase Android BoM, votre application utilisera toujours des versions compatibles des bibliothèques Firebase Android.

(Alternative) Ajouter des dépendances de la bibliothèque Firebase sans utiliser l'BoM

Si vous choisissez de ne pas utiliser Firebase BoM, vous devez spécifier chaque version de la bibliothèque Firebase dans sa ligne de dépendance.

Notez que si vous utilisez plusieurs bibliothèques Firebase dans votre application, recommandent d'utiliser BoM pour gérer les versions de la bibliothèque, ce qui garantit que toutes les versions sont compatibles.

dependencies {
    // Add the dependencies for the Crashlytics and Analytics libraries
    // When NOT using the BoM, you must specify versions in Firebase library dependencies
    implementation("com.google.firebase:firebase-crashlytics:19.1.0")
    implementation("com.google.firebase:firebase-analytics:22.1.0")
}
Vous recherchez un module de bibliothèque spécifique à Kotlin ? À partir d'octobre 2023 (Firebase BoM 32.5.0), les développeurs Kotlin et Java peuvent dépendre du module de bibliothèque principal (pour en savoir plus, consultez les questions fréquentes sur cette initiative).

Étape 2 : Ajoutez le plug-in Gradle Crashlytics à votre application

  1. Dans votre fichier Gradle au niveau racine (au niveau du projet) (<project>/build.gradle.kts ou <project>/build.gradle), ajoutez la Crashlytics du plug-in Gradle au bloc plugins:

    Kotlin

    plugins {
        // Make sure that you have the AGP plugin 8.1+ dependency
        id("com.android.application") version "8.1.4" apply false
        // ...
    
        // Make sure that you have the Google services Gradle plugin 4.4.1+ dependency
        id("com.google.gms.google-services") version "4.4.2" apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id("com.google.firebase.crashlytics") version "3.0.2" apply false
    }

    Groovy

    plugins {
        // Make sure that you have the AGP plugin 8.1+ dependency
        id 'com.android.application' version '8.1.4' apply false
        // ...
    
        // Make sure that you have the Google services Gradle plugin 4.4.1+ dependency
        id 'com.google.gms.google-services' version '4.4.2' apply false
    
        // Add the dependency for the Crashlytics Gradle plugin
        id 'com.google.firebase.crashlytics' version '3.0.2' apply false
    }
  2. Dans le fichier Gradle de votre module (au niveau de l'application) (généralement <project>/<app-module>/build.gradle.kts ou <project>/<app-module>/build.gradle), Ajoutez le plug-in Gradle Crashlytics:

    Kotlin

    plugins {
      id("com.android.application")
      // ...
    
      // Make sure that you have the Google services Gradle plugin
      id("com.google.gms.google-services")
    
      // Add the Crashlytics Gradle plugin
      id("com.google.firebase.crashlytics")
    }

    Groovy

    plugins {
      id 'com.android.application'
      // ...
    
      // Make sure that you have the Google services Gradle plugin
      id 'com.google.gms.google-services'
    
      // Add the Crashlytics Gradle plugin
      id 'com.google.firebase.crashlytics'
    }

Étape 3: Forcez un test de plantage pour terminer la configuration

Pour terminer la configuration de Crashlytics et afficher les données initiales dans le tableau de bord Crashlytics de la console Firebase, vous devez forcer un plantage de test.

  1. Ajoutez à votre application du code que vous pouvez utiliser pour forcer un plantage test.

    Vous pouvez utiliser le code suivant dans le fichier MainActivity de votre application pour ajouter un bouton à votre application qui, lorsqu'il est enfoncé, provoque un plantage. Le bouton est intitulé "Tester un plantage".

    Kotlin+KTX

    val crashButton = Button(this)
    crashButton.text = "Test Crash"
    crashButton.setOnClickListener {
       throw RuntimeException("Test Crash") // Force a crash
    }
    
    addContentView(crashButton, ViewGroup.LayoutParams(
           ViewGroup.LayoutParams.MATCH_PARENT,
           ViewGroup.LayoutParams.WRAP_CONTENT))

    Java

    Button crashButton = new Button(this);
    crashButton.setText("Test Crash");
    crashButton.setOnClickListener(new View.OnClickListener() {
       public void onClick(View view) {
           throw new RuntimeException("Test Crash"); // Force a crash
       }
    });
    
    addContentView(crashButton, new ViewGroup.LayoutParams(
           ViewGroup.LayoutParams.MATCH_PARENT,
           ViewGroup.LayoutParams.WRAP_CONTENT));
  2. Créez et exécutez votre application.

  3. Forcez le plantage du test pour envoyer le premier rapport d'erreur de votre application:

    1. Ouvrez votre application depuis votre appareil de test ou votre émulateur.

    2. Dans votre application, appuyez sur le bouton "Tester le plantage" que vous avez ajouté à l'aide du code ci-dessus.

    3. Après un plantage, redémarrez-la pour qu'elle puisse envoyer le plantage dans Firebase.

  4. Accédez au tableau de bord Crashlytics de la console Firebase pour voir votre plantage de test.

    Si vous avez actualisé la console et que le plantage du test ne s'affiche toujours pas après cinq minutes, Activer la journalisation du débogage pour voir si votre appli envoie des rapports d'erreur.


C'est tout ! Crashlytics surveille désormais les plantages, les erreurs non fatales et les erreurs ANR dans votre application. Accédez au tableau de bord Crashlytics pour afficher et examiner tous vos rapports et statistiques.

Étapes suivantes

  • Procédez à l'intégration avec Google Play pour que Vous pouvez filtrer les rapports d'erreur de votre application Android à l'aide du suivi Google Play directement dans le Crashlytics. Vous pouvez ainsi concentrer votre tableau de bord sur des builds spécifiques.
  • Dans Android Studio, affichez et filtrez les données Crashlytics.
    • Utilisez la fenêtre App Quality Insights (IQA) dans Android Studio pour afficher Crashlytics parallèlement à votre code. Plus besoin de jongler entre les Crashlytics le tableau de bord et l'IDE pour commencer à déboguer les principaux problèmes.
    • Découvrez comment utiliser la fenêtre de l'IQA dans la documentation Android Studio.
    • Nous serions ravis de recevoir vos commentaires. Envoyez-nous vos commentaires sur la période de l'IQA d'ici le en envoyant un rapport de bug.