Inizia a utilizzare Firebase Crashlytics


Questa guida rapida descrive come configurare Firebase Crashlytics nella tua app con l'SDK Firebase Crashlytics, in modo da ricevere report esaustivi sugli arresti anomali nella console Firebase. Con Crashlytics per Android, ricevi report su arresti anomali, errori non fatali e errori di tipo "L'applicazione non risponde" (ANR).

La configurazione di Crashlytics richiede attività sia nella console Firebase sia nel tuo IDE (come l'aggiunta di un file di configurazione Firebase e dell'SDK Crashlytics). Per completare la configurazione, devi forzare un arresto anomalo di prova per inviare il tuo primo report sugli arresti anomali a Firebase.

Prima di iniziare

  1. Se non l'hai già fatto, aggiungi Firebase al tuo progetto Android. Se non hai un'app per Android, puoi scaricare un'app di esempio.

  2. Opzione consigliata: per visualizzare automaticamente i log dei breadcrumb per comprendere le azioni utente che hanno portato a un evento di arresto anomalo, non irreversibile o ANR, devi attivare Google Analytics nel tuo progetto Firebase.

    • Se nel tuo progetto Firebase esistente Google Analytics non è abilitato, puoi attivarlo dalla scheda Integrazioni del tuo > Impostazioni progetto nella console Firebase.

    • Se stai creando un nuovo progetto Firebase, abilita Google Analytics durante il flusso di lavoro di creazione del progetto.

  3. Assicurati che la tua app abbia le seguenti versioni minime richieste:

    • Gradle 8.0
    • Plug-in Android per Gradle 8.1.0
    • Plug-in Gradle dei servizi Google 4.4.1

Passaggio 1: aggiungi l'SDK Crashlytics alla tua app

<project>/<app-module>/build.gradle.kts<project>/<app-module>/build.gradleCrashlytics Ti consigliamo di utilizzare Firebase Android BoM per controllare il controllo delle versioni delle librerie.

Per sfruttare i log dei breadcrumb, aggiungi anche l'SDK Firebase per Google Analytics alla tua app. Assicurati che Google Analytics sia abilitato nel tuo progetto Firebase.

dependencies {
    // Import the BoM for the Firebase platform
    implementation(platform("com.google.firebase:firebase-bom:33.6.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")
}

Se utilizzi Firebase Android BoM, la tua app utilizzerà sempre versioni compatibili delle librerie Firebase Android.

(Alternativa)  Aggiungi le dipendenze della libreria Firebase senza utilizzare il file BoM

Se scegli di non utilizzare Firebase BoM, devi specificare ogni versione della libreria Firebase nella relativa riga di dipendenza.

Tieni presente che se nella tua app utilizzi più librerie Firebase, ti consigliamo vivamente di utilizzare BoM per gestire le versioni delle librerie, in modo da garantire la compatibilità di tutte le versioni.

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.2.1")
    implementation("com.google.firebase:firebase-analytics:22.1.2")
}
Cerchi un modulo della libreria specifico per Kotlin? A partire da ottobre 2023 (Firebase BoM 32.5.0), sia gli sviluppatori Kotlin sia quelli Java possono fare affidamento sul modulo della libreria principale (per maggiori dettagli, consulta le Domande frequenti su questa iniziativa).

Passaggio 2: aggiungi il plug-in Crashlytics Gradle alla tua app

  1. Nel file Gradle a livello di directory principale (a livello di progetto) (<project>/build.gradle.kts o <project>/build.gradle), aggiungi il plug-in Gradle Crashlytics al blocco 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. Nel file Gradle del modulo (a livello di app) (di solito <project>/<app-module>/build.gradle.kts o <project>/<app-module>/build.gradle), aggiungi il 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'
    }

Passaggio 3: forza un arresto anomalo di test per completare la configurazione

Per completare la configurazione di Crashlytics e visualizzare i dati iniziali nella dashboard di Crashlytics della console Firebase, devi forzare un arresto anomalo di test.

  1. Aggiungi alla tua app codice da utilizzare per forzare un arresto anomalo di test.

    Puoi usare il seguente codice in MainActivity dell'app per aggiungere un pulsante all'app che, quando viene premuto, provoca un arresto anomalo. Il pulsante è etichettato come "Test di arresto anomalo".

    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. Crea ed esegui la tua app.

  3. Forza l'arresto anomalo di test per inviare il primo report sugli arresti anomali della tua app:

    1. Apri l'app dal dispositivo di test o dall'emulatore.

    2. Nell'app, premi il pulsante "Test di arresto anomalo" che hai aggiunto utilizzando il codice sopra riportato.

    3. Dopo che l'app si arresta in modo anomalo, riavviala in modo che possa inviare il report sul crash a Firebase.

  4. Vai alla dashboard Crashlytics della console Firebase per visualizzare l'errore di arresto anomalo del test.

    Se hai aggiornato la console e dopo cinque minuti non vedi ancora l'arresto anomalo del test, abilita la registrazione di debug per verificare se la tua app sta inviando report sugli arresti anomali.


E questo è tutto. Crashlytics ora monitora la tua app per rilevare arresti anomali, errori non fatali e ANR. Visita la dashboard Crashlytics per visualizzare e analizzare tutti i report e le statistiche.

Passaggi successivi

  • Integra Google Play in modo da poter filtrare i report sugli arresti anomali della tua app per Android per canale Google Play direttamente nella dashboard Crashlytics. In questo modo puoi concentrare meglio la dashboard su build specifiche.
  • In Android Studio, visualizza e filtra i dati Crashlytics.
    • Utilizza la finestra Approfondimenti sulla qualità dell'app (IQA) in Android Studio per visualizzare i dati di Crashlytics insieme al codice. Non è necessario passare da una dashboard all'altra di Crashlytics e dall'IDE per iniziare a eseguire il debug dei problemi principali.
    • Scopri come utilizzare la finestra dell'IQA nella documentazione di Android Studio.
    • Vorremmo conoscere la tua opinione. Inviaci un feedback sulla finestra dell'IQA inviando una segnalazione di bug.