Questa guida rapida descrive come configurare Firebase Crashlytics nella tua app con l'SDK Firebase Crashlytics in modo da poter ricevere report completi sugli arresti anomali nella console Firebase. Con Crashlytics per Android, ricevi report relativi ad arresti anomali, errori non irreversibili e "L'applicazione non risponde" (ANR).
La configurazione di Crashlytics richiede attività sia nella console Firebase sia nel IDE (ad esempio l'aggiunta di un file di configurazione di 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
Se non l'hai già fatto, aggiungi Firebase al tuo account Android. progetto. Se non hai un'app per Android, puoi scaricare un'app di esempio.
Consigliato: per ottenere automaticamente i log dei breadcrumb per comprendere le azioni dell'utente che hanno portato a un arresto anomalo, a un evento non irreversibile o ANR, devi attivare Google Analytics nel tuo progetto Firebase.
Se nel tuo progetto Firebase esistente Google Analytics non è attivato, puoi attivarlo dalla scheda Integrazioni del tuo
nella console > Impostazioni progettoFirebase. Se stai creando un nuovo progetto Firebase, abilita Google Analytics durante il flusso di lavoro di creazione del progetto.
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
Nel file Gradle del modulo (a livello di app) (di solito<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 Firebase Android BoM per controllare la gestione delle versioni delle librerie.
Per sfruttare i log dei breadcrumb, e aggiungi alla tua app l'SDK Firebase per Google Analytics. Accertati che Google Analytics è abilitato nel tuo progetto 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") }
Se utilizzi Firebase Android BoM, la tua app utilizzerà sempre versioni compatibili delle librerie Firebase Android.
(alternativa) Aggiungi dipendenze della libreria Firebase senza utilizzare il BoM
Se scegli di non utilizzare Firebase BoM, devi specificare ogni versione della libreria Firebase nella sua linea 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.1.0") implementation("com.google.firebase:firebase-analytics:22.1.0") }
Passaggio 2: aggiungi il plug-in Crashlytics Gradle alla tua app
Nel file Gradle a livello principale (a livello di progetto) (
<project>/build.gradle.kts
o<project>/build.gradle
), aggiungi il Plug-in Crashlytics Gradle per il bloccoplugins
: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 }
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 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 alla tua app del codice che puoi utilizzare per forzare un arresto anomalo del test.
Puoi usare il seguente codice in
MainActivity
della tua app per aggiungere un pulsante all'app che, se premuto, provoca un arresto anomalo. Il pulsante è etichettato "Test 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));
Crea ed esegui la tua app.
Forza l'arresto anomalo del test per inviare il primo report sugli arresti anomali della tua app:
Apri l'app dal dispositivo di test o dall'emulatore.
Nell'app, premi il pulsante "Test di arresto anomalo" che hai aggiunto utilizzando il codice sopra.
Dopo che l'app si arresta in modo anomalo, riavviala in modo che possa inviare il report sul crash a Firebase.
Vai alla dashboard Crashlytics della console Firebase per visualizzare l'errore di arresto anomalo del test.
Se hai aggiornato la console e ancora non vedi l'arresto anomalo del test dopo cinque minuti, attivare il logging di debug per controllare se la tua app invia report sugli arresti anomali.
Ed è fatta. Crashlytics ora monitora la tua app per rilevare arresti anomali, errori non fatali e ANR. Visita la dashboard di Crashlytics per visualizzare e analizzare tutti i report e le statistiche.
Passaggi successivi
- Personalizza la configurazione dei report sugli arresti anomali aggiungendo report, log, chiavi e monitoraggio degli errori non fatali che puoi attivare.
- Esegui l'integrazione con Google Play in modo da poter filtrare i report sugli arresti anomali della tua app per Android in base al canale Google Play direttamente nella dashboard di Crashlytics. In questo modo puoi concentrare meglio la tua 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 Crashlytics i dati insieme al codice: non c'è bisogno di spostarsi tra Crashlytics e l'IDE per iniziare a eseguire il debug dei problemi principali.
- Impara come utilizzare la finestra dell'IQA nella documentazione di Android Studio.
- Vorremmo conoscere la tua opinione. Inviaci un feedback sulla finestra IQA entro il giorno presentando una segnalazione di bug.