Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Cómo comenzar con Firebase Realtime Database para Unity

Firebase Realtime Database almacena y sincroniza datos con nuestra base de datos NoSQL en la nube. Los datos se sincronizan con todos los clientes en tiempo real y se mantienen disponibles cuando tu app está sin conexión.

Antes de comenzar

Sigue estos pasos para usar Realtime Database:

  • Registra tu proyecto de Unity y configúralo para usar Firebase.

    • Si tu proyecto de Unity ya usa Firebase, eso significa que ya está registrado y configurado.

    • Si aún no tienes un proyecto de Unity, puedes descargar una app de muestra.

  • Agrega el SDK de Firebase Unity (en específico, FirebaseDatabase.unitypackage) a tu proyecto de Unity.

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 moverlos a tu proyecto de Unity).

Crea una base de datos

  1. Si aún no lo has hecho, crea un proyecto de Firebase. Para ello, en Firebase console, haz clic en Agregar proyecto y, luego, sigue las instrucciones en pantalla a fin de crear un proyecto de Firebase o agregar servicios de Firebase a un proyecto de GCP existente.

  2. Ve a la sección Realtime Database de Firebase console. Se te pedirá que selecciones un proyecto de Firebase existente. Sigue el flujo de trabajo para crear la base de datos.

  3. Selecciona un modo de inicio para las reglas de seguridad de Firebase:

    Modo de prueba

    Es el modo recomendado si recién comienzas a usar las bibliotecas cliente para dispositivos móviles y la Web, pero permite que todos lean y reemplacen tus datos. Después de que realices las pruebas, asegúrate de revisar el artículo Explicación de las reglas de Firebase Realtime Database.

    Si quieres comenzar a usar los SDK para iOS, Android o la Web, selecciona el modo de prueba.

    Modo bloqueado

    Rechaza todas las lecturas y escrituras de clientes móviles y web. Tus servidores de aplicaciones autenticados aún pueden acceder a tu base de datos.

  4. Haz clic en Listo.

Cuando habilitas Realtime Database, también se habilita la API en el Administrador de API de Cloud.

Configura el acceso público

Realtime Database proporciona un lenguaje de reglas declarativas que te permite definir cómo se deben estructurar los datos, cómo se deben indexar y cuándo se pueden leer y escribir.

Configura el SDK para Unity Editor

Cuando pruebes tu escena en Unity Editor, puedes usar Realtime Database. Debes configurar el SDK con la URL de la base de datos apropiada. Llama a SetEditorDatabaseUrl con la URL de tu base de datos.

using Firebase;
using Firebase.Unity.Editor;

public class MyScript: MonoBehaviour {
  void Start() {
    // Set this before calling into the realtime database.
    FirebaseApp.DefaultInstance.SetEditorDatabaseUrl("https://YOUR-FIREBASE-APP.firebaseio.com/");
  }
}

Si decidiste usar el acceso público para tus reglas y estableciste la URL de la base de datos, puedes seguir con las secciones sobre el guardado y la recuperación de datos.

Opcional: Configuración de Editor para el acceso restringido

Si decides usar reglas que no permiten el acceso público, deberás configurar el SDK para usar una cuenta de servicio en la ejecución de Unity Editor. Esto te permitirá suplantar usuarios finales cuando hagas pruebas. Para esto, primero crea un archivo p12 nuevo a través de

https://console.cloud.google.com/iam-admin/serviceaccounts/project?project=YOUR-FIREBASE-APP

Registra el correo electrónico y la contraseña generados de la cuenta de servicio.

Ubica el archivo p12 en "Editor Default Resources" dentro de tu proyecto de Unity. A continuación, agrega el siguiente código para iniciar el uso de la cuenta de servicio.

using Firebase;
using Firebase.Unity.Editor;

public class MyScript: MonoBehaviour {
  void Start() {
    // Set these values before calling into the realtime database.
    FirebaseApp.DefaultInstance.SetEditorDatabaseUrl("https://YOUR-FIREBASE-APP.firebaseio.com/");
    FirebaseApp.DefaultInstance.SetEditorP12FileName("YOUR-FIREBASE-APP-P12.p12");
    FirebaseApp.DefaultInstance.SetEditorServiceAccountEmail("SERVICE-ACCOUNT-ID@YOUR-FIREBASE-APP.iam.gserviceaccount.com");
    FirebaseApp.DefaultInstance.SetEditorP12Password("notasecret");
  }
}

Próximos pasos