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.
Antes de comenzar
Si aún no lo has hecho, agrega Firebase a tu proyecto de Unity. Si aún no tienes un proyecto de Unity, puedes descargar una app de muestra.
Ten en cuenta que agregar Firebase a tu proyecto de Unity implica realizar tareas en Firebase console y en tu proyecto abierto de Unity (por ejemplo, descargar archivos de configuración de Firebase desde la consola y transferirlos a tu proyecto de Unity).
Opcional: Para obtener métricas de fallas (como los usuarios que no experimentaron fallas), rutas de navegación y eventos personalizados, deberás habilitar Google Analytics en tu proyecto de Firebase.
Si tu proyecto existente de Firebase no tiene habilitado Google Analytics, puedes habilitarlo en la pestaña Integraciones de
. > Configuración del proyecto Si quieres crear un nuevo proyecto de Firebase, habilita Google Analytics durante el flujo de trabajo de creación.
Por último, en la consola de Google Analytics, habilita el uso compartido de datos en la pestaña Admin > Account Settings > Data Sharing Settings.
En el caso de los proyectos más antiguos de Firebase, ten en cuenta que es posible que debas habilitar el uso compartido de datos en la pestaña Integraciones de
(en Firebase console). > Configuración del proyecto
Paso 1: Configura Crashlytics en Firebase console
Haz clic en Crashlytics en el panel de navegación izquierdo de Firebase console.
Si tu proyecto de Firebase contiene varias apps registradas, selecciona la última app que agregaste del cuadro desplegable junto a Crashlytics en la barra superior de la consola.
Haz clic en Habilitar Crashlytics.
Paso 2: Agrega Firebase Crashlytics a tu app
Descarga el SDK de Firebase Unity y descomprímelo en el lugar que prefieras.
El SDK de Firebase Unity no es específico para cada plataforma.
Abre el proyecto de Unity, ve a Assets > Import Package > Custom Package.
En el SDK que descomprimiste, selecciona importar el SDK de Crashlytics (
FirebaseCrashlytics.unitypackage
).También puedes importar cualquier otro producto de Firebase compatible.
En la ventana Import Unity Package, haz clic en Import.
Paso 3: Inicializa Crashlytics
Crea una secuencia de comandos nueva en C# y agrégala a
GameObject
en el ambiente.Abre el primer ambiente y crea un
GameObject
vacío con el nombreCrashlyticsInitializer
.Haz clic en Add Component en el Inspector del objeto nuevo.
Selecciona la secuencia de comandos
CrashlyticsInit
para agregarla al objetoCrashlyticsInitializer
.
Inicializa Crashlytics en el método
Start
de la secuencia de comandos:using System.Collections; using System.Collections.Generic; using UnityEngine; // Import Firebase using Firebase; public class CrashlyticsInit : MonoBehaviour { // Use this for initialization void Start () { // Initialize Firebase Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWith(task => { var dependencyStatus = task.Result; if (dependencyStatus == Firebase.DependencyStatus.Available) { // Create and hold a reference to your FirebaseApp, // where app is a Firebase.FirebaseApp property of your application class. // Crashlytics will use the DefaultInstance, as well; // this ensures that Crashlytics is initialized. Firebase.FirebaseApp app = Firebase.FirebaseApp.DefaultInstance; // Set a flag here for indicating that your project is ready to use Firebase. } else { UnityEngine.Debug.LogError(System.String.Format( "Could not resolve all Firebase dependencies: {0}",dependencyStatus)); // Firebase Unity SDK is not safe to use here. } }); } // Update is called once per frame void Update() // ... }
Una vez que agregues el SDK a tu app y se inicialice, Crashlytics comenzará a trabajar automáticamente para detectar y recopilar informes de fallas.
Paso 4: Ejecuta tu proyecto
Verifica que el proyecto se haya exportado correctamente a Android o iOS.
Si te parece que faltan archivos después de comparar el proyecto con las configuraciones de exportación que se muestran abajo, abre Unity Editor y ejecuta el agente de resolución de Servicios de Google Play.
iOS
Android
Ejecuta el agente de resolución (opcional)
Los agentes de resolución de los Servicios de Google Play garantizan que el proyecto de Unity tenga las dependencias necesarias para exportar la app a iOS o Android.
Si quieres obtener más información sobre el agente de resolución, consulta el archivo README del agente de resolución del archivo JAR de Unity.
iOS
El agente de resolución de iOS se ejecuta automáticamente y usa Cocoapods
para agregar las dependencias de iOS al directorio Pods
exportado.
Para descargar CocoaPods en tu máquina, haz lo siguiente:
- Navega a Assets > Play Services Resolver > iOS Resolver > Install Cocoapods
Para habilitar o inhabilitar la generación de podfiles (opcional), haz lo siguiente:
- Navega a Assets > Play Services Resolver > iOS Resolver > Settings
Android
El agente de resolución de Android se ejecuta automáticamente y usa gradle
para agregar las dependencias de Android a Assets/Plugins/Android
.
Para ejecutar el agente de resolución de forma manual, haz lo siguiente:
- Navega a Assets > Play Services Resolver > Android Resolver > Resolve
Para habilitar o inhabilitar la resolución automática (habilitada según la configuración predeterminada), haz lo siguiente:
- Navega a Assets > Play Services Resolver > Android Resolver > Settings
Próximos pasos
Para probar la configuración de Crashlytics, fuerza una falla en Firebase console.
Agrega informes, registros y claves opcionales, así como seguimiento de errores recuperables para personalizar la configuración del informe de fallas.