Agrega Firebase a tu proyecto de Unity

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

Para mostrar lo fácil que es conectar Firebase a tu proyecto Unity, creamos un juego de muestra, MechaHamster. Si quieres probar a agregar Firebase a un juego, usa la versión inicial que está en GitHub . Si desea una versión completa, consulte las versiones en App Store o Google Play Store .

MechaHamster (GitHub)

MechaHamster (Tienda de aplicaciones)

MechaHamster (Play Store)


Obtén más información sobre cómo potenciar tus juegos con Firebase en nuestra página de juegos de Firebase .

¿Ya agregaste Firebase a tu proyecto de Unity? Asegúrate de estar usando la última versión del SDK de Firebase Unity .

Requisitos previos

  • Instale Unity 2019.1 o posterior. Las versiones anteriores también pueden ser compatibles, pero no tendrán soporte activo. La compatibilidad con Unity 2019.1 se considera obsoleta y ya no se admitirá activamente después de la próxima versión importante.

  • (Solo plataformas Apple) Instale lo siguiente:

    • Xcode 13.3.1 o superior
    • CocoaPods 1.12.0 o superior
  • Asegúrese de que su proyecto de Unity cumpla con estos requisitos:

    • Para iOS : apunta a iOS 11 o superior
    • Para tvOS : apunta a tvOS 12 o superior
    • Para Android : apunta al nivel API 19 (KitKat) o superior
  • Configure un dispositivo físico o use un emulador para ejecutar su aplicación.

    • Para plataformas Apple : configure un dispositivo físico o utilice un simulador de iOS o tvOS.

      Para Cloud Messaging en iOS o tvOS, estos son los requisitos previos:

      • Configurar un dispositivo físico .
      • Obtenga una clave de autenticación de notificaciones push de Apple para su cuenta de desarrollador de Apple .
      • Habilite las notificaciones push en XCode en Aplicación > Capacidades .

    • Para Android : los emuladores deben utilizar una imagen de emulador con Google Play.

Si aún no tienes un proyecto de Unity y solo quieres probar un producto de Firebase, puedes descargar uno de nuestros ejemplos de inicio rápido .

Paso 1 : crea un proyecto de Firebase

Antes de poder agregar Firebase a su proyecto de Unity, debe crear un proyecto de Firebase para conectarse a su proyecto de Unity. Visita Comprender los proyectos de Firebase para obtener más información sobre los proyectos de Firebase.

  1. En Firebase console , haz clic en Agregar proyecto .

    • Para agregar recursos de Firebase a un proyecto de Google Cloud existente , ingrese el nombre del proyecto o selecciónelo en el menú desplegable.

    • Para crear un nuevo proyecto, ingrese el nombre del proyecto deseado. Opcionalmente, también puede editar el ID del proyecto que se muestra debajo del nombre del proyecto.

  2. Si se te solicita, revisa y acepta los términos de Firebase .

  3. Haga clic en Continuar .

  4. (Opcional) Configure Google Analytics para su proyecto, lo que le permitirá tener una experiencia óptima al utilizar cualquiera de los siguientes productos de Firebase:

    Seleccione una cuenta de Google Analytics existente o cree una cuenta nueva.

    Si crea una cuenta nueva, seleccione la ubicación de sus informes de Analytics y luego acepte la configuración de intercambio de datos y los términos de Google Analytics para su proyecto.

  5. Haz clic en Crear proyecto (o Agregar Firebase , si estás usando un proyecto de Google Cloud existente).

Firebase aprovisiona automáticamente recursos para tu proyecto de Firebase. Cuando se complete el proceso, accederás a la página de descripción general de tu proyecto de Firebase en Firebase console.

Paso 2 : registra tu aplicación en Firebase

Puedes registrar una o más aplicaciones o juegos para conectarlos con tu proyecto de Firebase.

  1. Vaya a la consola de Firebase .

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

    Si ya agregó una aplicación a su proyecto de Firebase, haga clic en Agregar aplicación para mostrar las opciones de la plataforma.

  3. Seleccione qué objetivo de compilación de su proyecto de Unity desea registrar, o incluso puede seleccionar registrar ambos objetivos ahora al mismo tiempo.

  4. Ingrese los ID específicos de la plataforma de su proyecto de Unity.

    • Para iOS : ingresa el ID de iOS de tu proyecto de Unity en el campo ID del paquete de iOS .

    • Para Android : ingrese el ID de Android de su proyecto de Unity en el campo de nombre del paquete de Android .
      Los términos nombre de paquete e ID de aplicación suelen utilizarse indistintamente.

    Abra su proyecto de Unity en su IDE de Unity, luego navegue hasta la sección de configuración para cada plataforma:

    • Para iOS : navegue hasta Configuración de compilación > iOS .

    • Para Android : navegue a Android > Configuración del reproductor > Otras configuraciones .

    El ID de su proyecto de Unity es el valor del identificador de paquete (ID de ejemplo: com.yourcompany.yourproject ).

  5. (Opcional) Ingrese los apodos específicos de la plataforma de su proyecto de Unity.
    Estos apodos son identificadores internos y prácticos y solo usted puede verlos en Firebase console.

  6. Haga clic en Registrar aplicación .

Paso 3 : agregar archivos de configuración de Firebase

  1. Obtenga los archivos de configuración de Firebase específicos de su plataforma en el flujo de trabajo de configuración de Firebase console.

    • Para iOS : haga clic en Descargar GoogleService-Info.plist .

    • Para Android : haga clic en Descargar google-services.json .

    • El archivo de configuración de Firebase contiene identificadores únicos, pero no secretos, para su proyecto. Para obtener más información sobre este archivo de configuración, visite Comprender los proyectos de Firebase .

    • Puede descargar su archivo de configuración de Firebase nuevamente en cualquier momento.

    • Asegúrese de que el nombre del archivo de configuración no tenga caracteres adicionales, como (2) .

  2. Abra la ventana Proyecto de su proyecto de Unity, luego mueva su(s) archivo(s) de configuración a la carpeta Assets .

  3. De vuelta en Firebase console, en el flujo de trabajo de configuración, haz clic en Siguiente .

Paso 4 : Agregar los SDK de Firebase Unity

  1. En Firebase console, haga clic en Descargar Firebase Unity SDK y luego descomprima el SDK en algún lugar conveniente.

    • Puedes descargar el SDK de Firebase Unity nuevamente en cualquier momento.

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

  2. En su proyecto abierto de Unity, navegue hasta Activos > Importar paquete > Paquete personalizado .

  3. Desde el SDK descomprimido, seleccione los productos de Firebase compatibles que desea usar en su aplicación.

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

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

  4. En la ventana Importar paquete de Unity , haga clic en Importar .

  5. De vuelta en Firebase console, en el flujo de trabajo de configuración, haz clic en Siguiente .

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

El SDK de Firebase Unity para Android requiere los servicios de Google Play , que deben estar actualizados antes de poder utilizar el SDK.

Agregue lo siguiente using la declaración y el código de inicialización al inicio de su aplicación. Puede verificar y, opcionalmente, actualizar los servicios de Google Play a la versión requerida por el SDK de Firebase Unity antes de llamar a cualquier otro método 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.
 
}
});

¡Estás listo! Su proyecto de Unity está registrado y configurado para usar Firebase.

Sin embargo, si tienes problemas para configurarlo, visita las preguntas frecuentes y solución de problemas de Unity .

Configurar un flujo de trabajo de escritorio ( beta )

Cuando estás creando un juego, a menudo es mucho más fácil probarlo primero en el editor de Unity y en plataformas de escritorio, luego implementarlo y probarlo en dispositivos móviles más adelante en el desarrollo. Para respaldar este flujo de trabajo, proporcionamos un subconjunto de SDK de Firebase Unity que se pueden ejecutar en Windows, macOS, Linux y desde el editor de Unity.

  1. Configure un proyecto Unity de plataforma de escritorio siguiendo las mismas instrucciones que para una plataforma móvil (comience con el paso anterior Registre su aplicación con Firebase ).

  2. Ejecute su proyecto de Unity en Unity IDE o seleccione crear su proyecto de Unity para escritorio .

  3. (Opcional) Ejecute su proyecto de Unity en modo de edición.

    El SDK de Firebase Unity también se puede ejecutar en el modo de edición de Unity, lo que permite su uso en complementos de edición.

    1. Cuando creas una FirebaseApp utilizada por el editor, no uses la instancia predeterminada.

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

      Esto es importante para evitar un conflicto en las opciones entre la instancia utilizada por el IDE de Unity y la instancia utilizada por su proyecto de Unity.

Productos de Firebase compatibles

Obtenga más información sobre las bibliotecas de Unity Firebase en la documentación de referencia .

Bibliotecas de Firebase disponibles para dispositivos móviles

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

Producto base de fuego paquete de unidad
AdMob Distribuido por separado en el complemento AdMob Unity
Analítica FirebaseAnalytics.unitypackage
Verificación de aplicaciones FirebaseAppCheck.unitypackage
Autenticación FirebaseAuth.unitypackage
Tienda de fuego en la nube FirebaseFirestore.unitypackage
Funciones de la nube FirebaseFunctions.unitypackage
Mensajería en la nube FirebaseMessaging.unitypackage
(recomendado) FirebaseAnalytics.unitypackage
Almacenamiento en la nube FirebaseStorage.unitypackage
Crashlíticos FirebaseCrashlytics.unitypackage
(recomendado) FirebaseAnalytics.unitypackage
Enlaces dinámicos FirebaseDynamicLinks.unitypackage
(recomendado) FirebaseAnalytics.unitypackage
Base de datos en tiempo real FirebaseDatabase.unitypackage
Configuración remota FirebaseRemoteConfig.unitypackage
(recomendado) FirebaseAnalytics.unitypackage

Bibliotecas de Firebase disponibles para escritorio

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

Producto Firebase (escritorio) paquete de unidad
Verificación de aplicaciones FirebaseAppCheck.unitypackage
Autenticación FirebaseAuth.unitypackage
Funciones de la nube FirebaseFunctions.unitypackage
Tienda de fuego en la nube FirebaseFirestore.unitypackage
Almacenamiento en la nube FirebaseStorage.unitypackage
Base de datos en tiempo real FirebaseDatabase.unitypackage
Configuración remota FirebaseRemoteConfig.unitypackage

Firebase proporciona las bibliotecas de escritorio restantes como implementaciones auxiliares (no funcionales) para mayor comodidad al compilar para Windows, macOS y Linux. Por lo tanto, no es necesario compilar código condicionalmente para apuntar al escritorio.

Próximos pasos