Agrega Firebase a tu proyecto de Unity

Mejora tus juegos de Unity con nuestros SDK de Firebase Unity.

Para demostrarte lo fácil que es integrar Firebase a tu proyecto de Unity, creamos MechaHamster, un juego de muestra. Si quieres intentar agregar Firebase a un juego, usa la versión de inicio que está en GitHub. Si quieres una versión completa, consulta las versiones en App Store o Google Play Store.

MechaHamster (GitHub)

MechaHamster (App Store)

MechaHamster (Play Store)


Obtén más información para mejorar tus juegos con Firebase en nuestra página de juegos de Firebase.

¿Ya agregaste Firebase a tu proyecto de Unity? Asegúrate de usar la versión más reciente del SDK de Firebase Unity.

Requisitos previos

  • Instala Unity 2019.1 o una versión más reciente. Las versiones anteriores pueden ser compatibles, pero no de forma activa. La compatibilidad con Unity 2019.1 se considera obsoleta y ya no se admitirá de forma activa después de la próxima actualización importante.

  • Instala los siguientes servicios (solo en plataformas de Apple):

    • Xcode 13.3.1 o una versión más reciente
    • CocoaPods 1.12.0 o una versión más reciente
  • Asegúrate de que tu proyecto de Unity cumpla con estos requisitos:

    • iOS: El sistema objetivo debe ser iOS 11 o una versión más reciente.
    • tvOS: El sistema objetivo debe ser tvOS 12 o una versión más reciente.
    • Android: El nivel de API objetivo debe ser 19 (KitKat) o una versión más reciente.
  • Configura un dispositivo físico o usa un emulador para ejecutar tu app.

    • Plataformas de Apple: Configura un dispositivo físico o usa un simulador de iOS o tvOS.

    • Android: Los emuladores deben usar una imagen que cuente con Google Play.

Si solo quieres probar un producto de Firebase, pero aún no tienes un proyecto de Unity, puedes descargar una de estas muestras de inicio rápido.

Paso 1: Crea un proyecto de Firebase

Antes de que puedas agregar Firebase al proyecto de Unity, deberás crear un proyecto de Firebase para conectarlo con el de Unity. Consulta el artículo Información sobre los proyectos de Firebase para obtener detalles sobre el tema.

Paso 2: Registra tu app con Firebase

Puedes registrar una o más apps o juegos para conectarlos con el proyecto de Firebase.

  1. Dirígete a Firebase console.

  2. En el centro de la página de descripción general del proyecto, haz clic en el ícono de Unity () para iniciar el flujo de trabajo de configuración.

    Si ya agregaste una app a tu proyecto de Firebase, haz clic en Agregar app para que se muestren las opciones de plataforma.

  3. Selecciona qué destino de compilación del proyecto de Unity quieres registrar. Si quieres registrar ambos destinos a la vez, este es el momento de hacerlo.

  4. Ingresa el ID del proyecto de Unity específico de cada plataforma.

    • iOS: Ingresa el ID de iOS del proyecto de Unity en el campo ID del paquete de iOS.

    • Android: Ingresa el ID de Android del proyecto de Unity en el campo Nombre del paquete de Android.
      Por lo general, los términos ID de la aplicación y nombre del paquete se utilizan de manera intercambiable.

  5. Ingresa el sobrenombre específico de cada plataforma para el proyecto de Unity (opcional).
    Los sobrenombres son identificadores internos y convenientes que solo tú puedes ver en Firebase console.

  6. Haz clic en Registrar app.

Paso 3: Agrega los archivos de configuración de Firebase

  1. Usa el flujo de trabajo de configuración de Firebase console para obtener los archivos de configuración de Firebase específicos de las plataformas.

    • iOS: Haz clic en Download GoogleService-Info.plist.

    • Android: Haz clic en Download google-services.json.

  2. Abre la ventana Project del proyecto de Unity y transfiere los archivos de configuración a la carpeta Assets.

  3. Vuelve a Firebase console y, en el flujo de trabajo de configuración, haz clic en Siguiente.

Paso 4: Agrega los SDK de Firebase Unity

  1. En Firebase console, haz clic en Descargar el SDK de Firebase Unity y descomprímelo en el lugar que prefieras.

    • Puedes volver a descargar el SDK de Firebase Unity cuando quieras.

    • El SDK de Firebase Unity no es específico para cada plataforma.

  2. Abre tu proyecto de Unity, ve a Elementos > Importar paquete > Paquete personalizado.

  3. En el SDK descomprimido, selecciona los productos de Firebase admitidos que deseas usar en la app.

    Si Analytics está habilitado

    • Agrega el paquete de Firebase para Google Analytics: FirebaseAnalytics.unitypackage.
    • Agrega los paquetes de cualquier otro producto de Firebase que quieras usar en tu app. Por ejemplo, para usar Firebase Authentication y Firebase Realtime Database:
      FirebaseAuth.unitypackage y FirebaseDatabase.unitypackage

    Si Analytics está inhabilitado

    Agrega los paquetes de los productos de Firebase que deseas usar en tu app. Por ejemplo, para usar Firebase Authentication y Firebase Realtime Database:
    FirebaseAuth.unitypackage y FirebaseDatabase.unitypackage

  4. En la ventana Import Unity Package, haz clic en Import.

  5. Vuelve a Firebase console y, en el flujo de trabajo de configuración, haz clic en Siguiente.

Paso 5: Confirma los requisitos de la versión de los Servicios de Google Play

El SDK de Firebase Unity en Android requiere los Servicios de Google Play actualizados para poder usarlo.

Agrega la siguiente sentencia using y el código de inicialización al comienzo de tu aplicación. Puedes buscar los Servicios de Google Play y, de forma opcional, actualizarlos a la versión que requiera el SDK de Firebase Unity. De esta manera, es posible llamar a otros métodos en el SDK.

using Firebase.Extensions;
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(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.
       app = Firebase.FirebaseApp.DefaultInstance;

    // Set a flag here to indicate whether Firebase is ready to use by your app.
  } else {
    UnityEngine.Debug.LogError(System.String.Format(
      "Could not resolve all Firebase dependencies: {0}", dependencyStatus));
    // Firebase Unity SDK is not safe to use here.
  }
});

¡Listo! El proyecto de Unity se registró y configuró para usar Firebase.

Sin embargo, si tienes problemas con la configuración, visita la página de preguntas frecuentes y solución de problemas de Unity.

Configura un flujo de trabajo para computadoras (versión beta)

Cuando creas un juego, suele ser más fácil probarlo en el editor de Unity y en plataformas de escritorio antes de implementarlo y probarlo en dispositivos móviles en una etapa posterior del desarrollo. Para admitir este flujo de trabajo, proporcionamos un subconjunto de los SDK de Firebase Unity que se pueden ejecutar en Windows, macOS, Linux y desde el editor de Unity.

  1. Para configurar un proyecto de Unity en plataformas de escritorio, sigue las mismas instrucciones de las plataformas móviles (comienza con el paso Registra tu app con Firebase).

  2. Ejecuta el proyecto de Unity en su IDE, o bien selecciona que quieres compilar tu proyecto de Unity para computadoras.

  3. (Opcional) Ejecuta el proyecto de Unity en el modo de edición.

    El SDK de Firebase Unity también se puede ejecutar en el modo de edición de Unity, lo que te permite usarlo en complementos del editor.

    1. Cuando crees un FirebaseApp que usa el editor, no uses la instancia predeterminada.

    2. En su lugar, proporciona un nombre único para la llamada FirebaseApp.Create().

      Esto es importante para evitar conflictos en las opciones entre la instancia que usa el IDE de Unity y la instancia que usa tu proyecto de Unity.

Productos de Firebase admitidos

Consulta la documentación de referencia para obtener más información sobre las bibliotecas de Firebase Unity.

Bibliotecas de Firebase disponibles para dispositivos móviles

El SDK de Firebase Unity admite los siguientes productos de Firebase en Apple y Android:

Producto de Firebase Paquete de Unity
AdMob Se distribuye por separado en el complemento de AdMob para Unity
Analytics FirebaseAnalytics.unitypackage
Verificación de aplicaciones FirebaseAppCheck.unitypackage
Authentication FirebaseAuth.unitypackage
Cloud Firestore FirebaseFirestore.unitypackage
Cloud Functions FirebaseFunctions.unitypackage
Cloud Messaging FirebaseMessaging.unitypackage
(recomendado) FirebaseAnalytics.unitypackage
Cloud Storage FirebaseStorage.unitypackage
Crashlytics FirebaseCrashlytics.unitypackage
(recomendado) FirebaseAnalytics.unitypackage
Dynamic Links FirebaseDynamicLinks.unitypackage
(recomendado) FirebaseAnalytics.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage
(recomendado) FirebaseAnalytics.unitypackage

Bibliotecas de Firebase disponibles para computadoras

El SDK de Firebase Unity incluye compatibilidad con flujos de trabajo de computadoras para un subconjunto de productos, lo que permite usar ciertas partes de Firebase en el editor de Unity y en versiones independientes para computadoras en Windows, macOS y Linux.

Producto de Firebase (computadoras) Paquete de Unity
Verificación de aplicaciones FirebaseAppCheck.unitypackage
Authentication FirebaseAuth.unitypackage
Cloud Functions FirebaseFunctions.unitypackage
Cloud Firestore FirebaseFirestore.unitypackage
Cloud Storage FirebaseStorage.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage

Las bibliotecas de escritorio restantes son implementaciones auxiliares (no funcionales) que Firebase proporciona a fin de realizar compilaciones para Windows, macOS y Linux. Por lo tanto, no es necesario que compiles código de manera condicional orientado a la versión para computadoras.

Próximos pasos