Comience con Firebase Crashlytics

Este inicio rápido describe cómo configurar Firebase Crashlytics en tu aplicación con el SDK de Firebase Crashlytics para que puedas obtener informes completos sobre fallas en Firebase console.Con Crashlytics para Android, obtienes informes de fallas, errores no fatales y errores de "La aplicación no responde" (ANR).

Configurar Crashlytics requiere tareas tanto en Firebase console como en tu IDE (como agregar un archivo de configuración de Firebase y el SDK de Crashlytics). Para finalizar la configuración, deberás forzar una prueba de falla para enviar tu primer informe de falla a Firebase.

Antes de que empieces

  1. Si aún no lo has hecho, agrega Firebase a tu proyecto de Android. Si no tiene una aplicación para Android, puede descargar una aplicación de muestra .

  2. Recomendado : para obtener automáticamente registros de ruta de navegación para comprender las acciones del usuario que conducen a un evento de falla, no fatal o ANR, debe habilitar Google Analytics en su proyecto de Firebase.

    • Si su proyecto Firebase existente no tiene Google Analytics habilitado, puede habilitar Google Analytics desde la pestaña Integraciones de su > Configuración del proyecto en Firebase console.

    • Si estás creando un nuevo proyecto de Firebase, habilita Google Analytics durante el flujo de trabajo de creación del proyecto.

Paso 1 : agregue el SDK de Crashlytics a su aplicación

En el archivo Gradle de su módulo (nivel de aplicación) (generalmente <project>/<app-module>/build.gradle.kts o <project>/<app-module>/build.gradle ), agregue la dependencia para la biblioteca Crashlytics para Android. Recomendamos utilizar Firebase Android BoM para controlar el control de versiones de la biblioteca.

Para aprovechar los registros de ruta de navegación , agregue también el SDK de Firebase para Google Analytics a su aplicación. Asegúrese de que Google Analytics esté habilitado en su proyecto de 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")
}

Al usar Firebase Android BoM , su aplicación siempre usará versiones compatibles de las bibliotecas de Firebase Android.

(Alternativa) Agregue dependencias de la biblioteca de Firebase sin usar la BoM

Si elige no utilizar la BoM de Firebase, debe especificar cada versión de la biblioteca de Firebase en su línea de dependencia.

Tenga en cuenta que si usa varias bibliotecas de Firebase en su aplicación, le recomendamos encarecidamente usar la BoM para administrar las versiones de la biblioteca, lo que garantiza 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:18.6.3")
    implementation("com.google.firebase:firebase-analytics:21.6.1")
}
¿Busca un módulo de biblioteca específico de Kotlin? A partir de octubre de 2023 (Firebase BoM 32.5.0) , tanto los desarrolladores de Kotlin como los de Java podrán depender del módulo de biblioteca principal (para más detalles, consulte las preguntas frecuentes sobre esta iniciativa ).

Paso 2 : agregue el complemento Crashlytics Gradle a su aplicación

  1. En su archivo Gradle de nivel raíz (nivel de proyecto) ( <project>/build.gradle.kts o <project>/build.gradle ), agregue el complemento Crashlytics Gradle al bloque plugins :

    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
    }
    
  2. En el archivo Gradle de su módulo (nivel de aplicación) (generalmente <project>/<app-module>/build.gradle.kts o <project>/<app-module>/build.gradle ), agregue el complemento 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'
    }

Paso 3 : fuerce una prueba de bloqueo para finalizar la configuración

Para terminar de configurar Crashlytics y ver los datos iniciales en el panel de Crashlytics de Firebase console, debes forzar una prueba de bloqueo.

  1. Agregue código a su aplicación que pueda usar para forzar una falla de prueba.

    Puede usar el siguiente código en MainActivity de su aplicación para agregar un botón a su aplicación que, cuando se presiona, provoca un bloqueo. 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));
    
  2. Cree y ejecute su aplicación.

  3. Fuerza el bloqueo de prueba para enviar el primer informe de bloqueo de tu aplicación:

    1. Abra su aplicación desde su dispositivo de prueba o emulador.

    2. En su aplicación, presione el botón "Probar bloqueo" que agregó usando el código anterior.

    3. Después de que su aplicación falle, reiníciela para que pueda enviar el informe de fallas a Firebase.

  4. Vaya al panel de Crashlytics de Firebase console para ver el fallo de su prueba.

    Si actualizó la consola y aún no ve el fallo de prueba después de cinco minutos, habilite el registro de depuración para ver si su aplicación envía informes de fallos.


¡Y eso es! Crashlytics ahora monitorea su aplicación en busca de fallas, errores no fatales y ANR. Visite el panel de Crashlytics para ver e investigar todos sus informes y estadísticas.

Próximos pasos

  • Integre con Google Play para que pueda filtrar los informes de fallos de su aplicación de Android por seguimiento de Google Play directamente en el panel de Crashlytics. Esto le permite centrar mejor su panel en compilaciones específicas.
  • En Android Studio, vea y filtre datos de Crashlytics.
    • Utilice la ventana App Quality Insights (AQI) en Android Studio para ver los datos de Crashlytics junto con su código; no es necesario saltar entre el panel de Crashlytics y el IDE para comenzar a depurar los problemas principales.
    • Obtenga acceso a la ventana AQI en la versión Electric Eel de Android Studio (estable) o pruebe nuevas funciones de AQI en Flamingo (beta). Descargue la versión de Android Studio que desee.
    • Aprenda a utilizar la ventana AQI en la documentación de Android Studio.
    • ¡Nos encantaría saber de usted! Envíenos sus comentarios sobre la ventana AQI presentando un informe de error .

,

Este inicio rápido describe cómo configurar Firebase Crashlytics en tu aplicación con el SDK de Firebase Crashlytics para que puedas obtener informes completos sobre fallas en Firebase console.Con Crashlytics para Android, obtienes informes de fallas, errores no fatales y errores de "La aplicación no responde" (ANR).

Configurar Crashlytics requiere tareas tanto en Firebase console como en tu IDE (como agregar un archivo de configuración de Firebase y el SDK de Crashlytics). Para finalizar la configuración, deberás forzar una prueba de falla para enviar tu primer informe de falla a Firebase.

Antes de que empieces

  1. Si aún no lo has hecho, agrega Firebase a tu proyecto de Android. Si no tiene una aplicación para Android, puede descargar una aplicación de muestra .

  2. Recomendado : para obtener automáticamente registros de ruta de navegación para comprender las acciones del usuario que conducen a un evento de falla, no fatal o ANR, debe habilitar Google Analytics en su proyecto de Firebase.

    • Si su proyecto Firebase existente no tiene Google Analytics habilitado, puede habilitar Google Analytics desde la pestaña Integraciones de su > Configuración del proyecto en Firebase console.

    • Si estás creando un nuevo proyecto de Firebase, habilita Google Analytics durante el flujo de trabajo de creación del proyecto.

Paso 1 : agregue el SDK de Crashlytics a su aplicación

En el archivo Gradle de su módulo (nivel de aplicación) (generalmente <project>/<app-module>/build.gradle.kts o <project>/<app-module>/build.gradle ), agregue la dependencia para la biblioteca Crashlytics para Android. Recomendamos utilizar Firebase Android BoM para controlar el control de versiones de la biblioteca.

Para aprovechar los registros de ruta de navegación , agregue también el SDK de Firebase para Google Analytics a su aplicación. Asegúrese de que Google Analytics esté habilitado en su proyecto de 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")
}

Al usar Firebase Android BoM , su aplicación siempre usará versiones compatibles de las bibliotecas de Firebase Android.

(Alternativa) Agregue dependencias de la biblioteca de Firebase sin usar la BoM

Si elige no utilizar la BoM de Firebase, debe especificar cada versión de la biblioteca de Firebase en su línea de dependencia.

Tenga en cuenta que si usa varias bibliotecas de Firebase en su aplicación, le recomendamos encarecidamente usar la BoM para administrar las versiones de la biblioteca, lo que garantiza 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:18.6.3")
    implementation("com.google.firebase:firebase-analytics:21.6.1")
}
¿Busca un módulo de biblioteca específico de Kotlin? A partir de octubre de 2023 (Firebase BoM 32.5.0) , tanto los desarrolladores de Kotlin como los de Java podrán depender del módulo de biblioteca principal (para más detalles, consulte las preguntas frecuentes sobre esta iniciativa ).

Paso 2 : Agregue el complemento de Gradle de Crashlytics a su aplicación

  1. En su archivo de gradle a nivel raíz (a nivel de proyecto) ( <project>/build.gradle.kts o <project>/build.gradle ), agregue el complemento de Gradle de CrashlyTics al bloque plugins :

    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
    }
    
  2. En su archivo de Gradle de módulo (APP-APLEVE) (generalmente <project>/<app-module>/build.gradle.kts o <project>/<app-module>/build.gradle ), agregue 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 : Forzar un bloqueo de prueba para finalizar la configuración

Para finalizar la configuración de Crashlytics y ver los datos iniciales en el tablero de Crashlytics de la consola Firebase, debe forzar un bloqueo de prueba.

  1. Agregue el código a su aplicación que puede usar para forzar un bloqueo de prueba.

    Puede usar el siguiente código en MainActivity de su aplicación para agregar un botón a su aplicación que, cuando se presiona, causa un bloqueo. El botón está etiquetado como "bloqueo de prueba".

    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. Cree y ejecute su aplicación.

  3. Force el bloqueo de la prueba para enviar el primer informe de bloqueo de su aplicación:

    1. Abra su aplicación desde su dispositivo de prueba o emulador.

    2. En su aplicación, presione el botón "Prueba de bloqueo" que agregó usando el código anterior.

    3. Después de que su aplicación se bloquee, reinicie para que su aplicación pueda enviar el informe de bloqueo a Firebase.

  4. Vaya al tablero de Crashlytics de la consola Firebase para ver el bloqueo de su prueba.

    Si ha renovado la consola y aún no está viendo el bloqueo de la prueba después de cinco minutos, habilite el registro de depuración para ver si su aplicación está enviando informes de bloqueo.


¡Y eso es! Crashlytics ahora está monitoreando su aplicación para accidentes, errores no fatales y ANR. Visite el tablero de Crashlytics para ver e investigar todos sus informes y estadísticas.

Próximos pasos

  • Integre con Google Play para que pueda filtrar los informes de bloqueo de su aplicación Android de Google Play Track directamente en el Panel de Crashlytics. Esto le permite enfocar mejor su tablero en compilaciones específicas.
  • En Android Studio, vea y filtre los datos de Crashlytics.
    • Use la ventana de la calidad de la calidad de la aplicación (AQI) en Android Studio para ver los datos de Crashlytics junto con su código, no es necesario saltar de un lado a otro entre el tablero de Crashlytics y el IDE para comenzar a depurar los principales problemas.
    • Obtenga acceso a la ventana AQI en la versión de anguila eléctrica de Android Studio (estable) o pruebe nuevas funciones AQI en Flamingo (beta). Descargue la versión de Android Studio deseada.
    • Aprenda a usar la ventana AQI en la documentación de Android Studio.
    • ¡Nos encantaría saber de usted! Envíenos comentarios sobre la ventana AQI presentando un informe de error .