Questa guida di avvio rapido descrive come configurare Firebase Crashlytics nella tua app con l'SDK Firebase Crashlytics in modo da poter ottenere report completi sugli arresti anomali nella console Firebase.Con Crashlytics per Android, ricevi report su arresti anomali, errori non fatali ed errori "L'applicazione non risponde" (ANR).
La configurazione di Crashlytics richiede attività sia nella console Firebase che nel tuo IDE (come l'aggiunta di un file di configurazione Firebase e dell'SDK di Crashlytics). Per completare la configurazione, dovrai forzare un arresto anomalo di prova per inviare il primo rapporto sull'arresto anomalo a Firebase.
Prima di iniziare
Se non l'hai già fatto, aggiungi Firebase al tuo progetto Android. Se non disponi di un'app Android, puoi scaricare un'app di esempio .
Consigliato : per ottenere automaticamente i log breadcrumb per comprendere le azioni degli utenti che portano a un arresto anomalo, un evento non fatale o ANR, devi abilitare Google Analytics nel tuo progetto Firebase.
Se il tuo progetto Firebase esistente non ha Google Analytics abilitato, puoi abilitare Google Analytics dalla scheda Integrazioni del tuo
Se stai creando un nuovo progetto Firebase, abilita Google Analytics durante il flusso di lavoro di creazione del progetto.
Passaggio 1 : aggiungi l'SDK Crashlytics alla tua app
Nel file Gradle del modulo (a livello di app) (solitamente<project>/<app-module>/build.gradle.kts
o <project>/<app-module>/build.gradle
), aggiungi la dipendenza per la libreria Crashlytics per Android. Ti consigliamo di utilizzare la distinta base Android Firebase per controllare il controllo delle versioni della libreria.Per sfruttare i log 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:32.8.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") }
Utilizzando la distinta base Firebase per Android , la tua app utilizzerà sempre le versioni compatibili delle librerie Firebase Android.
(Alternativa) Aggiungi le dipendenze della libreria Firebase senza utilizzare la distinta base
Se scegli di non utilizzare la distinta base Firebase, devi specificare ciascuna versione della libreria Firebase nella relativa riga di dipendenza.
Tieni presente che se utilizzi più librerie Firebase nella tua app, ti consigliamo vivamente di utilizzare la distinta base per gestire le versioni della libreria, il che garantisce che tutte le versioni siano compatibili.
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:18.6.3") implementation("com.google.firebase:firebase-analytics:21.6.1") }
Passaggio 2 : aggiungi il plug-in Crashlytics Gradle alla tua app
Nel file Gradle a livello di root (a livello di progetto) (
<project>/build.gradle.kts
o<project>/build.gradle
), aggiungi il plug-in Crashlytics Gradle al bloccoplugins
:Kotlin
plugins { id("com.android.application") version "7.3.0" apply false // ... // Make sure that you have the Google services Gradle plugin dependency id("com.google.gms.google-services") version "4.4.1" apply false // Add the dependency for the Crashlytics Gradle plugin id("com.google.firebase.crashlytics") version "2.9.9" apply false }
Groovy
plugins { id 'com.android.application' version '7.3.0' apply false // ... // Make sure that you have the Google services Gradle plugin dependency id 'com.google.gms.google-services' version '4.4.1' apply false // Add the dependency for the Crashlytics Gradle plugin id 'com.google.firebase.crashlytics' version '2.9.9' apply false }
Nel file Gradle del modulo (a livello di app) (solitamente
<project>/<app-module>/build.gradle.kts
o<project>/<app-module>/build.gradle
), aggiungi il plug-in Crashlytics Gradle: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 del 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 del test.
Aggiungi codice alla tua app che puoi utilizzare per forzare un arresto anomalo del test.
Puoi utilizzare il codice seguente nella
MainActivity
della tua app per aggiungere un pulsante alla tua app che, se premuto, provoca un arresto anomalo. Il pulsante è etichettato "Test Crash".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));
Crea ed esegui la tua app.
Forza l'arresto anomalo del test per inviare il primo rapporto sull'arresto anomalo della tua app:
Apri la tua app dal dispositivo di prova o dall'emulatore.
Nella tua app, premi il pulsante "Test Crash" che hai aggiunto utilizzando il codice sopra.
Dopo che l'app si è arrestata in modo anomalo, riavviala in modo che l'app possa inviare il rapporto sull'arresto anomalo a Firebase.
Vai alla dashboard Crashlytics della console Firebase per vedere l'arresto anomalo del test.
Se hai aggiornato la console e non vedi ancora l'arresto anomalo del test dopo cinque minuti, abilita la registrazione del debug per vedere se la tua app sta inviando rapporti sugli arresti anomali.
E questo è tutto! Crashlytics ora monitora la tua app per arresti anomali, errori non irreversibili e ANR. Visita la dashboard di Crashlytics per visualizzare ed esaminare tutti i report e le statistiche.
Prossimi passi
- Personalizza la configurazione del rapporto sugli arresti anomali aggiungendo rapporti, registri, chiavi e monitoraggio degli errori non fatali.
- Integra con Google Play in modo da poter filtrare i rapporti sugli arresti anomali della tua app Android in base al monitoraggio di Google Play direttamente nella dashboard di Crashlytics. Ciò ti consente di focalizzare meglio la tua dashboard su build specifiche.
- In Android Studio, visualizza e filtra i dati di Crashlytics.
- Utilizza la finestra App Quality Insights (AQI) in Android Studio per visualizzare i dati di Crashlytics insieme al codice: non è necessario saltare avanti e indietro tra la dashboard di Crashlytics e l'IDE per iniziare a eseguire il debug dei problemi principali.
- Ottieni l'accesso alla finestra AQI nella versione Electric Eel di Android Studio (stabile) o prova le nuove funzionalità AQI in Flamingo (beta). Scarica la versione di Android Studio desiderata.
- Scopri come utilizzare la finestra AQI nella documentazione di Android Studio.
- Ci piacerebbe sentire la tua opinione! Inviaci feedback sulla finestra AQI inviando una segnalazione di bug .