En esta guía de inicio rápido, se describe cómo configurar Firebase Crashlytics en tu app con el SDK de Firebase Crashlytics para que puedas obtener informes de fallas completos en Firebase console. Con Crashlytics para Android, obtienes informes de fallas, errores recuperables y errores de "Aplicación no responde" (ANR).
La configuración de Crashlytics requiere realizar tareas en Firebase console y en tu IDE (por ejemplo, agregar un archivo de configuración de Firebase y el SDK de Crashlytics). Para finalizar la configuración, deberás forzar una falla de prueba a fin de enviar el primer informe de fallas a Firebase.
Antes de comenzar
Si aún no lo has hecho, agrega Firebase a tu proyecto de Android. Si no tienes ninguna app para Android, puedes descargar una app de ejemplo.
Recomendación: Para obtener automáticamente registros de rutas de navegación y comprender las acciones del usuario que conducen a una falla, un evento recuperable o de ANR, debes habilitar Google Analytics en tu proyecto de Firebase.
Si tu proyecto de Firebase existente no tiene habilitado Google Analytics, puedes habilitar Google Analytics en la pestaña Integraciones de
en > Configuración del proyectoFirebase console. Si quieres crear un nuevo proyecto de Firebase, habilita Google Analytics durante el flujo de trabajo de creación del proyecto.
Asegúrate de que tu app tenga las siguientes versiones mínimas requeridas:
- Gradle 8.0
- Complemento de Android para Gradle 8.1.0
- Complemento de Gradle para los servicios de Google 4.4.1
Paso 1: Agrega el SDK de Crashlytics a tu app
En el archivo Gradle del módulo (nivel de app) (generalmente<project>/<app-module>/build.gradle.kts
o
<project>/<app-module>/build.gradle
),
agrega la dependencia de la biblioteca de Crashlytics para Android. Te recomendamos usar
Firebase Android BoM
para controlar las versiones de las bibliotecas.
Para aprovechar los registros de rutas de navegación, también agrega el SDK de Firebase para Google Analytics a tu app. Asegúrate de que Google Analytics esté habilitado en tu proyecto de 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") }
Cuando usas Firebase Android BoM, tu app siempre usará versiones compatibles de las bibliotecas de Firebase para Android.
(Alternativa) Agrega dependencias de la biblioteca de Firebase sin usar la BoM
Si eliges no usar la Firebase BoM, debes especificar cada versión de la biblioteca de Firebase en su línea de dependencia.
Ten en cuenta que, si usas múltiples bibliotecas de Firebase en tu app, es muy recomendable que uses la BoM para administrar las versiones de las bibliotecas para garantizar que todas las versiones sean 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.2.1") implementation("com.google.firebase:firebase-analytics:22.1.2") }
Paso 2: Agrega el complemento de Gradle de Crashlytics a tu app
En tu archivo de Gradle de nivel raíz (a nivel de proyecto) (
<project>/build.gradle.kts
o<project>/build.gradle
), agrega el complemento de Gradle de Crashlytics al bloqueplugins
: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 }
En el archivo de Gradle del módulo (a nivel de app) (generalmente
<project>/<app-module>/build.gradle.kts
o<project>/<app-module>/build.gradle
), agrega el complemento de Gradle de 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' }
Paso 3: Fuerza una falla de prueba para finalizar la configuración
Para finalizar la configuración de Crashlytics y ver los datos iniciales en el panel de Crashlytics de Firebase console, debes forzar una falla de prueba.
Agrega código a tu app para forzar una falla de prueba.
Puedes usar el siguiente código en la
MainActivity
de tu app para agregar un botón que, cuando se presione, genere una falla. El botón tiene la etiqueta “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));
Compila y ejecuta tu app.
Fuerza la falla de prueba para enviar el primer informe de fallas de la app, de la siguiente manera:
Abre la app desde tu emulador o dispositivo de prueba.
En tu app, presiona el botón “Test Crash” que agregaste con el código anterior.
Una vez que tu app falle, reiníciala para que pueda enviar el informe de fallas a Firebase.
Ve al panel de Crashlytics de Firebase console para ver la falla de prueba.
Si actualizaste la consola y sigues sin poder ver la falla de prueba después de cinco minutos, habilita el registro de depuración para confirmar si tu app está enviando informes de fallas.
Eso es todo. Ahora Crashlytics supervisa tu app para detectar fallas, errores recuperables y de ANR. Visita el panel de Crashlytics para ver y analizar todos los informes y estadísticas.
Próximos pasos
- Personaliza la configuración de informes de fallas agregando informes, registros y claves opcionales, así como seguimiento de errores recuperables.
- Realiza integraciones en Google Play para que puedas filtrar los informes de fallas de tu app para Android por segmento de Google Play directamente en el panel de Crashlytics. Esto te permite enfocar mejor el panel en compilaciones específicas.
-
En Android Studio, ve y filtra datos de Crashlytics.
- Usa la ventana App Quality Insights (AQI) en Android Studio para ver datos de Crashlytics junto con tu código. No necesitas alternar entre el panel de Crashlytics y el IDE para comenzar a depurar los problemas principales.
- Obtén más información para usar la ventana de AQI en la documentación de Android Studio.
- Nos gustaría conocer tu opinión. Completa un informe de errores para enviarnos tus comentarios sobre la ventana de AQI.