Firebase Crashlytics para aplicaciones de Capacitor

Aprende a integrar informes de fallos en tiempo real en tus aplicaciones móviles con una guía paso a paso sobre cómo configurar Crashlytics para iOS y Android.

Martin Donadieu

Martin Donadieu

Marketer de Contenido

Firebase Crashlytics para aplicaciones de Capacitor

Firebase Crashlytics te ayuda a rastrear los bloqueos de la aplicación en tiempo real, proporcionando informes detallados para solucionar problemas rápidamente. Se integra sin problemas con Capacitor para aplicaciones de iOS y Android. Aquí está lo que necesitas saber:

  • ¿Por qué usar Crashlytics?

    • Obtén alertas de bloqueo en tiempo real.
    • Analiza informes de bloqueo detallados con agrupación automática de problemas.
    • Monitorea errores críticos para mantener las aplicaciones estables.
  • Requisitos de configuración:

    • Instala Node.js (v16+), Capacitor (v4+), y herramientas como Xcode 14+ y Android Studio Electric Eel.
    • Descarga archivos de configuración de Firebase (GoogleService-Info.plist para iOS, google-services.json para Android).
    • Actualiza archivos específicos de la plataforma como Podfile (iOS) y build.gradle (Android).
  • Pasos clave:

    • Instala Crashlytics:

      Terminal window
      npm install @capacitor-firebase/crashlytics && npx cap sync
    • Inicializa Crashlytics en tu aplicación:

      import { FirebaseCrashlytics } from '@capacitor-firebase/crashlytics';
      await FirebaseCrashlytics.initialize();
  • Prueba tu configuración:

    • Provoca un bloqueo de prueba:

      await FirebaseCrashlytics.crash();
  • Consejo adicional: Combina Crashlytics con Capgo para obtener actualizaciones en vivo instantáneas sin demoras en la tienda de aplicaciones.

Esta guía asegura que tu aplicación esté libre de bloqueos y sea fácil de usar. ¡Comienza configurando Firebase Crashlytics hoy!

Guía de Android 2021: Firebase Crashlytics - error personalizado …

Firebase Crashlytics

Requisitos de configuración

Antes de comenzar, asegúrate de haber completado los siguientes pasos:

Software y cuentas requeridas

Necesitarás instalar lo siguiente:

  • Node.js (v16 o superior) y Capacitor (v4 o superior)
  • Una cuenta de Firebase con un proyecto activo
  • Xcode 14+ para desarrollo de iOS
  • Android Studio Electric Eel o una versión más reciente para desarrollo de Android
  • La última versión de CocoaPods (requerido para iOS)

Archivos de configuración de la plataforma

Para iOS:

  • Descarga el archivo GoogleService-Info.plist desde la Consola de Firebase.
  • Actualiza tu Podfile para incluir las dependencias de Crashlytics.
  • Agrega las claves de privacidad necesarias a tu archivo Info.plist.

Para Android:

  • Obtén el archivo google-services.json desde la Consola de Firebase.
  • Realiza cambios tanto en los archivos build.gradle a nivel de proyecto como a nivel de aplicación.
  • Actualiza el AndroidManifest.xml para incluir los permisos requeridos.

Configuración de la Consola de Firebase

Firebase

Configura Firebase y habilita Crashlytics a través de estos pasos:

  1. Crea un proyecto de Firebase y habilita Crashlytics.

  2. Registra tus aplicaciones en la Consola de Firebase:

    • Usa el ID del paquete para iOS y el nombre del paquete para Android.
    • Descarga los archivos de configuración: GoogleService-Info.plist (iOS) y google-services.json (Android).
  3. Integra los SDKs de Firebase en tu aplicación agregando estas dependencias:

    Para Android (archivo build.gradle a nivel de aplicación):

    dependencies {
    implementation platform('com.google.firebase:firebase-bom:32.0.0')
    implementation 'com.google.firebase:firebase-crashlytics'
    implementation 'com.google.firebase:firebase-analytics'
    }

    Para iOS (Podfile):

    pod 'Firebase/Crashlytics'
    pod 'Firebase/Analytics'

Una vez que estos pasos estén completos, estarás listo para pasar a la sección de Instalación del Plugin.

Pasos de instalación

Instalación del plugin

Primero, instala el plugin y sincronízalo con Capacitor:

Terminal window
npm install @capacitor-firebase/crashlytics && npx cap sync

Luego, inicializa Crashlytics en tu aplicación. Agrega el siguiente código a app.component.ts o main.ts:

import { FirebaseCrashlytics } from '@capacitor-firebase/crashlytics';
await FirebaseCrashlytics.initialize();

Configuración de la plataforma

Configura las configuraciones requeridas para las plataformas Android e iOS.

Configuración de Android

  1. Agrega el plugin Gradle de Crashlytics a tu archivo build.gradle a nivel de aplicación:

    buildscript {
    dependencies {
    classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.5'
    }
    }
    apply plugin: 'com.google.firebase.crashlytics'
  2. Habilita la recopilación de bloqueos en AndroidManifest.xml:

    <meta-data
    android:name="firebase_crashlytics_collection_enabled"
    android:value="true" />

Configuración de iOS

  1. Configura Firebase en AppDelegate.swift:

    import Firebase
    FirebaseApp.configure()

Prueba tu configuración

Confirma que Crashlytics está funcionando ejecutando un bloqueo de prueba y revisando la Consola de Firebase:

  • Provoca un bloqueo de prueba con una clave personalizada:

    await FirebaseCrashlytics.setCustomKey({key: 'test_scenario', value: 'manual_crash'});
    await FirebaseCrashlytics.crash();
  • Opcionalmente, identifica a un usuario:

    await FirebaseCrashlytics.setUserId({userId: 'user123'});
  • Registra eventos personalizados:

    await FirebaseCrashlytics.log({message: 'Test crash triggered'});

Los informes, incluyendo trazas de pila, detalles del dispositivo y claves personalizadas, deberían aparecer en la Consola de Firebase en unos 5 minutos.

Importante: Elimina las llamadas de bloqueo antes de lanzar tu aplicación. Para deshabilitar la recopilación de bloqueos durante el desarrollo, usa:

await FirebaseCrashlytics.setCrashlyticsCollectionEnabled({enabled: false});

Guía de monitoreo

Una vez que hayas confirmado tu configuración con un bloqueo de prueba, usa la Consola de Firebase para rastrear bloqueos y errores reales en tu aplicación en vivo.

Lectura de informes de bloqueo

Puedes encontrar informes de bloqueo en la Consola de Firebase en la sección de Crashlytics. Aquí está lo que verás:

  • Usuarios sin bloqueos: El porcentaje de usuarios que no han experimentado bloqueos.
  • Estabilidad del problema: Con qué frecuencia ocurren los bloqueos.
  • Análisis de impacto: El número de usuarios afectados.

Haz clic en cualquier problema para profundizar en detalles como trazas de pila, información del dispositivo (por ejemplo, versión del SO, memoria), claves personalizadas, registros y el camino del usuario que llevó al bloqueo.

Consejo profesional: Habilita la función de “alertas de velocidad” para recibir notificaciones cuando las tasas de bloqueos aumenten repentinamente. Esto puede ayudarte a abordar problemas antes de que afecten a demasiados usuarios.

Consejos de gestión de errores

  • Prioriza por impacto: Concédele prioridad a los bloqueos que afectan a más usuarios o que ocurren en partes críticas de tu aplicación. El seguimiento de tendencias puede ayudarte a identificar problemas urgentes.

  • Usa claves personalizadas: Agrega contexto a tus informes de bloqueos con claves personalizadas. Por ejemplo:

    await FirebaseCrashlytics.setCustomKey({
    key: 'current_view',
    value: 'payment_processing'
    });
  • Agrupa problemas similares: Aprovecha la agrupación automática de problemas de Firebase. También puedes etiquetar bloqueos relacionados con claves personalizadas consistentes y usar títulos claros y descriptivos para un seguimiento más fácil.

Protección de la privacidad del usuario

Para garantizar el cumplimiento y salvaguardar los datos de los usuarios, sigue estas pautas:

  • Permisos:

    • Menciona la recopilación de bloqueos en tu política de privacidad.
    • Obtén el consentimiento del usuario para la recopilación de datos en regiones con regulaciones GDPR.
    • Proporciona a los usuarios una opción para optar por no participar en la recopilación de bloqueos.
  • Controles de recopilación de datos:

    await FirebaseCrashlytics.setCrashlyticsCollectionEnabled({enabled: false});
    await FirebaseCrashlytics.setCrashlyticsCollectionEnabled({enabled: true});
  • Retención de datos:

    • Configura la eliminación automática de datos después de 90 días.
    • Elimina información sensible de tus informes.
    • Usa claves personalizadas no identificables para mantener la privacidad del usuario mientras depuras.

Integración de Capgo

Capgo

Agiliza el proceso desde la detección de bloqueos hasta la implementación de soluciones combinando el sistema de actualización en vivo de Capgo con Crashlytics.

Acerca de Capgo

Capgo es una herramienta de actualización en vivo diseñada específicamente para aplicaciones de Capacitor. Con más de 1,900 aplicaciones en producción y una tasa de actualización del 95% en 24 horas, asegura soluciones rápidas sin las demoras de las aprobaciones de la tienda de aplicaciones [1].

Las características clave incluyen:

  • Cifrado de extremo a extremo para actualizaciones seguras
  • Retroceso con un clic a versiones anteriores
  • Distribución basada en canales para lanzamientos dirigidos
  • Integración CI/CD sin problemas
  • Una plataforma 100% de código abierto

Crashlytics y Capgo juntos

Usar Crashlytics con Capgo crea un flujo de trabajo eficiente para identificar y resolver problemas rápidamente.

Aquí está cómo funciona:

  1. Detección y respuesta a bloqueos
    Crashlytics identifica un bloqueo, y Capgo te permite desplegar soluciones instantáneamente sin esperar la aprobación de la tienda de aplicaciones.

  2. Actualizaciones específicas

    • Pruebas Beta: Prueba soluciones con un grupo específico para asegurarte de que sean efectivas.
    • Implementación escalonada: Despliega actualizaciones gradualmente para reducir riesgos.
    • Solución de emergencia: Empuja rápidamente parches críticos para resolver problemas urgentes.
  3. Monitoreo y verificación
    Después de desplegar actualizaciones con Capgo, usa Crashlytics para rastrear tasas de bloqueos y confirmar que el problema esté resuelto.

Seguridad y reglas de la tienda de aplicaciones

Capgo se adhiere a las políticas de Apple y Google mientras proporciona funciones de seguridad sólidas:

  • 82% de tasa de éxito global para la entrega de actualizaciones [1]
  • Control automático de versiones para mejor organización
  • Cumplimiento con las pautas de actualizaciones en vivo de la tienda de aplicaciones

Para una integración segura con Crashlytics:

  • Habilita el seguimiento de errores en ambos sistemas.
  • Usa las herramientas de monitoreo de Capgo junto con los informes de Crashlytics.
  • Mantén el control de versiones para todas las actualizaciones.
  • Guarda registros detallados de actualizaciones para fines de auditoría.

Continúa a la sección de Opciones de Plugins para explorar otras herramientas de actualización en vivo.

Opciones de Plugins

Elegir el plugin adecuado para la recopilación de bloqueos puede impactar significativamente la forma en que identificas y solucionas errores en tu aplicación.

Aquí hay una rápida comparación de Crashlytics con otras herramientas populares de informes de errores para Capacitor:

  • Sentry: Ofrece un nivel gratuito con planes de pago a partir de $26/mes. Soporta más de 30 plataformas y provee monitoreo de errores en tiempo real con contexto detallado.
  • Bugsnag: Comienza en $47/mes. Cubre tanto plataformas móviles como web, presentando agrupación automática de errores y seguimiento de lanzamientos.
  • Rollbar: Tiene un precio a partir de $31/mes. Funciona en múltiples plataformas, con características como seguimiento de implementaciones y seguimiento de personas.

Crashlytics es especialmente atractivo para equipos que ya utilizan Firebase, gracias a su integración fluida y su nivel gratuito.

Resumen

Aquí hay una rápida mirada a lo que has logrado y lo que viene a continuación:

Recapitulación de Pasos de Configuración

Has completado tres pasos clave para comenzar:

  • Creaste un proyecto de Firebase y registraste tus aplicaciones iOS/Android.
  • Instalaste y configuraste el plugin de Crashlytics.
  • Actualizaste los archivos necesarios de las plataformas iOS y Android.

¿Por Qué Integrar Estas Herramientas?

Combinar Firebase Crashlytics con Capgo te brinda un sistema poderoso para el seguimiento de errores y gestión de actualizaciones. Esto es lo que ofrece esta combinación:

  • Correcciones rápidas: Envía actualizaciones instantáneas y retrocede cambios con solo un clic.
  • Implementaciones confiables: Asegúrate de que las actualizaciones sean ampliamente adoptadas y entregadas sin problemas a los usuarios.

¿Qué Sigue?

  1. Activa la analítica de fallos detallada en la Consola de Firebase.
  2. Agrega Capgo a tu pipeline de CI/CD para actualizaciones simplificadas.
  3. Utiliza canales de Capgo para probar y liberar correcciones paso a paso.

Con Crashlytics y Capgo en su lugar, estás listo para mantener tu aplicación funcionando sin problemas y mejorando con el tiempo.

Actualizaciones Instantáneas para Aplicaciones CapacitorJS

Envía actualizaciones, correcciones y características instantáneamente a tus aplicaciones CapacitorJS sin demoras en la tienda de aplicaciones. Experimenta una integración perfecta, cifrado de extremo a extremo y actualizaciones en tiempo real con Capgo.

Comienza Ahora

Últimas noticias

Capgo te ofrece los mejores conocimientos que necesitas para crear una aplicación móvil verdaderamente profesional.