Esto forma parte de una serie de artículos sobre la calidad de las apps. A continuación, te mostramos un resumen de los demás artículos:
La primera impresión es muy importante para los usuarios. Incluso las apps con el mejor diseño pueden fracasar si no brindan una experiencia estable sin fallas.
Imagina a un usuario preparándose para relajarse después del trabajo. Toma un bocadillo, se acomoda en el sofá, abre su app de juego favorita… y se produce una falla. O bien, la app se congela cada vez que está a punto de pasar al siguiente nivel. Estas experiencias inestables pueden frustrar a los usuarios y hacer que desinstalen la app o dejen una opinión negativa en la tienda de aplicaciones.
De hecho, el motivo más frecuente de las eliminaciones tempranas de una app son los problemas de calidad. Uno de cada cinco usuarios (19%) desinstalará una app tras experimentar errores técnicos o fallas.1
Las apps pueden fallar por varios motivos. El dispositivo del usuario puede tener poca memoria o un chipset limitado, o bien ejecutar una versión del SO anterior. Otro motivo puede ser que el código de la app tenga muchos errores. Principalmente, a medida que agregas funciones nuevas y obtienes más usuarios en distintos dispositivos, es probable que se presente una variedad mayor de fallas detrás de escena.
Realizar seguimientos, organizar y corregir fallas manualmente puede resultar un desafío complejo y tedioso. Aún si recopilas todos los datos de fallas, es posible que no veas con claridad qué produce la falla en la app o qué errores afectan a la mayoría de los usuarios. Es por esta razón que tener las herramientas de informe de fallas adecuadas es de vital importancia.
La mejor forma de aumentar la retención y participación de usuarios nuevos y existentes es mejorar tu app y lanzar funciones nuevas de forma continua. Sin embargo, a medida que crezca tu base de usuarios, resultará más difícil dividir tu tiempo entre lanzar funciones nuevas y supervisar su estabilidad.
El informe de fallas en tiempo real de Firebase Crashlytics te permite clasificar y solucionar rápidamente los errores recopilando y agrupando las fallas en función de la parte del código donde se produjo. Se enumeran grupos de errores por orden de frecuencia y grado de impacto en los usuarios, por lo que puedes identificar con facilidad cuáles abordar y, de esta forma, obtienes más tiempo para compilar funciones que mantendrán interesados a los usuarios.
Se muestran datos de informes sobre fallas en el panel de Firebase Crashlytics
A fin de adentrarte aún más en tus datos de fallas, puedes habilitar la exportación de flujos de BigQuery para identificar los problemas más comunes y comprender las tendencias a lo largo del tiempo, como qué versiones del SO o dispositivos específicos están provocando la mayoría de las fallas. Esto es útil para visualizar tus datos de fallas y supervisar los problemas que activan alertas y flujos de trabajos personalizados. Asimismo, si habilitas la transmisión de BigQuery, puedes analizar tus datos con BigQuery SQL, exportarlos a otro proveedor de servicios en la nube y usar Google Data Studio para crear paneles y visualizaciones de tendencias de fallas personalizados.
Crashlytics integrado con BigQuery
En el caso de una app como Spotify, con más de 65 equipos que mantienen millones de líneas de código por plataforma y lanzan funciones nuevas cada semana, moverse rápido y en gran escala es clave. A fin de reducir el estrés del equipo de desarrollo antes de cada lanzamiento, Spotify pasó de realizar un seguimiento manual de las fallas todos los días a automatizar el proceso de lanzamiento a través de Crashlytics, principalmente con BigQuery. En lugar de que el gerente de versiones tenga que supervisar cada falla, Spotify ahora usa Crashlytics para hacerles un seguimiento en versiones Alfa y Beta, establecer reglas para los tickets entrantes y asignarlos a los equipos correctos.
Deliveroo, una empresa de envío de comida a domicilio del Reino Unido, también implementó Crashlytics y BigQuery a fin de adelantarse a las fallas antes de que alcancen determinados límites y realizar un seguimiento y análisis de datos de rendimiento de cada versión nueva en tiempo real. Gracias a la posibilidad de crear informes personalizados y agrupar errores, el equipo de desarrollo redujo de forma considerable el tiempo requerido para solucionar problemas y reproducir los errores de la app. A la vez, las sesiones sin fallas aumentaron de 99.35% a más de 99.7%.
Las fallas no solo alejan a tus usuarios existentes, sino que las opiniones negativas sobre la app tras experimentar una sesión inestable también pueden afectar la posibilidad de atraer usuarios nuevos. Es por eso que es esencial saber cuándo y dónde se producen las fallas.
Las alertas de velocidad de Crashlytics te notifican cuando una falla determinada comienza a replicarse, de modo que puedas responder antes de que el problema afecte a más usuarios. Las alertas de velocidad también se pueden configurar, por lo que puedes establecer límites que determinen cuándo se deben activar las alertas en función del porcentaje de sesiones de usuarios afectados.
Por ejemplo, las alertas de velocidad pueden detectar problemas grandes durante el lanzamiento de una versión nueva de tu app o notificarte rápidamente si hay algún error que está afectando a un gran porcentaje de usuarios. Te enviarán un correo electrónico o un mensaje en Slack, Jira o PagerDuty, según la integración de terceros que tengas habilitada con tu proyecto.
Configuración de alertas de velocidad en la consola de Firebase
Así es como Swiggy, uno de los servicios más grandes de entrega de comida a domicilio de India, supervisa de manera simultánea todos los errores de la app y se enfoca primero en los problemas más importantes. El equipo de desarrollo de Swiggy conectó las alertas de velocidad de Crashlytics con PagerDuty y Jira a fin de notificar al ingeniero disponible cuando las fallas importantes superen cierto límite. Esto le permitió a Swiggy acelerar el envío de versiones, con la seguridad de que recibirán alertas sobre fallas de alta y baja prioridad de forma adecuada.
La identificación rápida de fallas frecuentes es solo una pieza del rompecabezas. Cuando descubres la causa raíz, puedes mitigar el riesgo y reducir la frustración de los usuarios de la app garantizando que esas fallas no volverán a producirse.
Las claves y los registros personalizados de Crashlytics graban los eventos que experimentan los usuarios durante la sesión a través de un seguimiento del estado y la secuencia de su app. Con esto obtienes una instantánea práctica de lo que el usuario estaba haciendo cuando se produjo la falla de la app. Asimismo, puedes definir claves personalizadas, como "fuente_instalación", "idioma" y "red", a fin de identificar exactamente qué sucedió antes de cada falla, por ejemplo, si el usuario instaló la app desde Play Store o si tenía una conexión Wi-Fi, y reducir el tiempo que toma reproducirla.
Además, si usas Crashlytics con Google Analytics, puedes capturar automáticamente eventos predefinidos de Google Analytics, conocidos como rutas de navegación, que complementa los datos obtenidos con los registros personalizados y brinda información más detallada sobre la causa de la falla.
Rutas de navegación en Google Analytics
Para los desarrolladores de juegos para dispositivos móviles como Tapps Games, brindar una experiencia estable y envolvente es clave para mantener a los jugadores interesados. En el pasado, Tapps solía buscar de forma manual comentarios negativos en las opiniones de los usuarios y, luego, intentaba reproducir las fallas que encontraban. Gracias a las alertas de velocidad de Crashlytics, el equipo recibe de forma inmediata notificaciones cuando comienzan a aumentar las fallas graves. Después de revisar los datos, se dieron cuenta de que una actualización al proceso de creación de videos del juego Vlogger Go Viral junto con un evento comunitario de jugadores estaban produciendo fallas constantes.
El equipo de desarrollo de Tapps Games implementó rápidamente una solución que ayudó a aumentar su calificación de la tienda de Google Play de 3.9 a 4.7 y, a su vez, elevaron la cantidad de usuarios que no experimentaron fallas de 94.6% a 99.8%.
Para hacer crecer tu público, mantener a los usuarios interesados y generar recomendaciones y opiniones positivas, la estabilidad de tu app debe ser un área de enfoque clave. Instalar el SDK de Firebase Crashlytics en tu app te brinda las herramientas y la información que necesitas para mantenerte al tanto de los problemas críticos.
En la tercera y última parte de nuestra guía, destacaremos un conjunto de herramientas que puedes usar junto con Firebase Crashlytics para observar el rendimiento de tu app desde la perspectiva del usuario.
Fuentes