Ir a la consola

Información sobre los proyectos de Firebase

En esta página se ofrecen descripciones generales breves de diversos conceptos importantes acerca de los proyectos de Firebase. Cuando se proporcionen, sigue los vínculos para ver información más detallada sobre las funciones, los servicios y también otras plataformas. En la parte inferior de esta página, podrás encontrar un listado de las recomendaciones generales para los proyectos de Firebase.

Relación entre los proyectos, las apps y los productos de Firebase

Un proyecto de Firebase es la entidad de nivel superior de Firebase. Después de que vincules tu app con tu proyecto de Firebase y la configures a fin de que use la plataforma, podrás agregar los SDK de Firebase para los productos que quieras, como Analytics, Cloud Firestore, Performance Monitoring o Remote Config.

Relación entre los proyectos de Firebase y Google Cloud Platform (GCP)

Cuando creas un proyecto de Firebase nuevo en Firebase console, lo que en realidad estás creando es un proyecto de Google Cloud Platform (GCP). Un proyecto de GCP puede considerarse como un contenedor virtual de datos, código, configuración y servicios. Un proyecto de Firebase es un proyecto de GCP con configuraciones y servicios adicionales específicos de Firebase. Incluso puedes crear un proyecto de GCP primero y agregar Firebase al proyecto posteriormente.

Ya que un proyecto de Firebase es un proyecto de GCP:

Configura un proyecto de Firebase y conecta las apps

En Firebase console, puedes configurar un proyecto de Firebase y conectar las apps (o, en casos prácticos avanzados, puedes hacerlo mediante la API de REST para la administración de Firebase). Durante los procesos de configuración del proyecto y de conexión de las apps, debes tomar varias decisiones de configuración y agregar objetos o archivos de configuración especiales a tu proyecto local.

Asegúrate de revisar las recomendaciones generales antes de configurar el proyecto y conectar las apps.

Nombre del proyecto

Cuando creas un proyecto, debes proporcionarle un nombre. Este identificador es el nombre solo interno de tu proyecto en Firebase console, GCP Console y Firebase CLI. El nombre del proyecto no se expone en productos, servicios o recursos públicamente visibles de Firebase o GCP; su propósito es ayudarte a distinguir los distintos proyectos con más facilidad.

Puedes editar el nombre del proyecto cuando lo desees en configuración del proyecto en settings. Este identificador aparece en el panel de la parte superior.

ID del proyecto

Un proyecto de Firebase (y el proyecto de GCP asociado) tiene un ID de proyecto que corresponde al identificador único global de tu proyecto tanto en Firebase como en GCP. Cuando creas un proyecto de Firebase, el sistema le asigna automáticamente un ID único, el cual puedes editar durante la configuración.

Si borras un proyecto, su ID también se borra y no se puede volver a usar para otros proyectos.

Recursos de Firebase y el ID del proyecto

El ID del proyecto se muestra en recursos de Firebase visibles de forma pública, por ejemplo:

  • Subdominio de Hosting predeterminado: projectID.web.app y projectID.firebaseapp.com
  • URL predeterminada de Realtime Database: projectID.firebaseio.com
  • Nombre predeterminado del depósito de Cloud Storage: projectID.appspot.com

Para todos los recursos anteriormente mencionados, puedes crear instancias no predeterminadas. Los nombres visibles de forma pública de los recursos no predeterminados se pueden personalizar en su totalidad. Puedes conectar dominios personalizados a tu sitio alojado en Firebase, fragmentar tu base de datos de Realtime Database y crear varios depósitos de Cloud Storage (visita la página de introducción de tu plataforma).

Firebase CLI y el ID del proyecto

En algunos casos prácticos, es posible que tengas diversos proyectos de Firebase asociados con el mismo directorio local de apps. En estos casos, cuando usas Firebase CLI, debes pasar la marca --project con los comandos firebase para indicar con qué proyecto de Firebase quieres interactuar.

Además, puedes configurar alias de proyectos para tus diversos proyectos de Firebase, así no tendrás que recordar los ID de cada proyecto.

Llamadas a la API y el ID del proyecto

Para muchas llamadas a la API, debes incluir el ID del proyecto a fin de identificar el proyecto de Firebase.

Encuentra el ID del proyecto

  • En Firebase console, haz clic en settings y selecciona Configuración del proyecto. El ID del proyecto aparecerá en el panel de la parte superior.

  • Ejecuta firebase list con Firebase CLI. El ID del proyecto aparecerá junto con todos los proyectos de Firebase asociados con tu cuenta.

Archivos de configuración y objetos de Firebase

Cuando conectas una app a tu proyecto, Firebase console proporciona un archivo de configuración de Firebase (para iOS o Android) o un objeto de configuración (para la Web) que deberás agregar directamente al proyecto local.

  • Para iOS, debes agregar un archivo de configuración GoogleService-Info.plist
  • Para Android, debes agregar un archivo de configuración google-services.json
  • Para la Web, debes agregar un objeto de configuración de Firebase para las secuencias de comandos de inicialización

Puedes obtener los archivos o los objetos de configuración de Firebase en cualquier momento.

El archivo o el objeto de configuración de Firebase asocia la app con el proyecto de Firebase y sus recursos (bases de datos, depósitos de almacenamiento, etcétera).

El contenido se considera público, incluido el ID específico de la plataforma (que ingresaste en el flujo de trabajo de configuración de Firebase console) y los valores específicos de tu proyecto de Firebase, como la clave de API, la URL de Realtime Database y el nombre del depósito de Storage. Por ello, debes usar reglas de seguridad para proteger los datos y los archivos que almacenas en Realtime Database, Cloud Firestore y Cloud Storage.

En el caso de los proyectos de código abierto, por lo general, no se recomienda incluir el archivo o el objeto de configuración de Firebase en el control del código fuente, ya que, en la mayoría de los casos, los usuarios deben crear sus propios proyectos de Firebase y dirigir sus apps a sus backends.

Administrar un proyecto de Firebase

Procura revisar las recomendaciones generales del nivel de proyecto para conocer las consideraciones que podrían afectar la forma en que administras tu proyecto de Firebase.

Herramientas para administrar tu proyecto

Firebase console

Firebase console ofrece el entorno más completo para administrar productos de Firebase, apps y configuraciones en el nivel del proyecto.

Pantalla de descripción general del proyecto en Firebase console

En el panel de la izquierda de la consola se enumeran los productos de Firebase, organizados en categorías de nivel superior. Haz clic en settings en la parte superior del panel de la izquierda para acceder a la configuración de tu proyecto (las opciones de configuración incluyen las integraciones, los permisos de acceso y la facturación).

En la parte central de la consola aparecen los botones que inician los flujos de trabajo de configuración para conectar varios tipos de apps. Cuando comienzas a usar Firebase, el área principal de la consola cambia a un panel que muestra estadísticas sobre los productos que usas.

Firebase CLI (una herramienta de línea de comandos)

Firebase también ofrece Firebase CLI que permite configurar y administrar productos de Firebase específicos, como Firebase Hosting y Cloud Functions para Firebase.

Después de instalar la CLI mediante npm, tendrás acceso al comando firebase global. Usa la CLI para implementar versiones nuevas del contenido alojado en Firebase o actualizaciones de las funciones. Con la CLI, también puedes vincular el directorio de la app local con el proyecto de Firebase.

API de REST para la administración de Firebase

Con la API de REST para la administración de Firebase, puedes administrar tu proyecto de Firebase de manera programática. Por ejemplo, puedes registrar una app para Android o iOS con tu proyecto de manera programática. También puedes generar listas de las apps (para Android/iOS) registradas con tu proyecto.

Recomendaciones generales

Agregar apps a un proyecto

Asegúrate de que todas las apps dentro de un proyecto sean variantes de plataforma de la misma aplicación desde la perspectiva del usuario final. Se aconseja conectar las versiones de iOS, Android o web de la misma app o juego con el mismo proyecto de Firebase. Generalmente, todas las apps de un proyecto comparten los mismos recursos de Firebase (bases de datos, depósitos de almacenamiento, etcétera),

Si tienes múltiples variantes de compilación con diferentes ID de paquete de iOS o ID de app para Android definidos, puedes registrar cada variante con un proyecto de Firebase distinto. Sin embargo, si tienes variantes que comparten los mismos recursos de Firebase, regístralos con el mismo proyecto de Firebase.

Si bien no existe una restricción para la cantidad de apps dentro de un proyecto, agregar una app puede crear uno o más ID de cliente de OAuth 2.0 subyacentes. Hay un límite de aproximadamente 30 ID de cliente que se pueden crear dentro de un mismo proyecto.

Instancias múltiples

No se recomienda conectar varias apps o sitios web independientes y diferentes a nivel lógico al mismo proyecto (lo que a menudo se conoce como “instancias múltiples”). Esta modalidad puede generar problemas graves de configuración y privacidad de los datos, incluidos algunos no intencionales relacionados con la agregación de estadísticas, la autenticación compartida, las estructuras de bases de datos demasiado complejas, además de dificultades con las reglas de seguridad.

Por lo general, si un conjunto de apps no comparte los mismos datos y las mismas configuraciones, recomendamos encarecidamente que conectes cada app a un proyecto de Firebase diferente.

Por ejemplo, si desarrollas una aplicación sin marca, cada app etiquetada de forma independiente debe tener su propio proyecto de Firebase. De esta manera, las apps no comparten, y no debieran hacerlo por motivos de privacidad, datos con las demás.

Ten en cuenta algunos límites generales para los proyectos, las apps y los sitios de Firebase:

  • Cantidad de proyectos por cuenta

    • Con el plan Spark del nivel gratuito, tu cuota se limita a unos pocos proyectos (usualmente alrededor de 5 a 10).
    • Con los planes pagados, tu cuota de proyectos aumenta sustancialmente por cada cuenta de facturación, siempre y cuando la cuenta de facturación de Cloud esté en regla.

    El límite de cuota de proyectos no suele ser una preocupación para la mayoría de los desarrolladores. Sin embargo, si necesitas aumentar tu cuota, puedes solicitar un aumento.

    Recuerda que se requieren 30 días para borrar por completo un proyecto, y que este se considera en la cuota hasta que el proceso se haya completado.

  • Cantidad de apps por proyecto

    Si bien no existe una restricción para la cantidad de apps dentro de un proyecto, agregar una app puede crear uno o más ID de cliente de OAuth 2.0 subyacentes. Hay un límite de aproximadamente 30 ID de cliente que se pueden crear dentro de un mismo proyecto.

  • Cantidad de sitios de hosting por proyecto

    La función de varios sitios de Firebase Hosting admite un máximo de 36 sitios por proyecto.

Lanza tu app