Esta página ofrece breves descripciones de varios conceptos importantes sobre los proyectos de Firebase. Cuando estén disponibles, siga los enlaces para encontrar información más detallada sobre características, servicios, herramientas y mejores prácticas.
Relación entre proyectos, aplicaciones y productos de Firebase
Un proyecto de Firebase es la entidad de nivel superior de Firebase. En un proyecto, puede registrar sus aplicaciones web, Apple o Android. Después de registrar sus aplicaciones con Firebase, puede agregar los SDK de Firebase para cualquier cantidad de productos de Firebase , como Analytics, Cloud Firestore, Performance Monitoring o Remote Config.
Obtenga información más detallada sobre este proceso en la guía de introducción de su plataforma:
iOS+ | Androide | web | Unidad | C++ | Aleteo .
Comprender la jerarquía de los proyectos de Firebase
Este diagrama muestra la jerarquía básica de un proyecto de Firebase. Estas son las relaciones clave:
Un proyecto de Firebase es como un contenedor para todas sus aplicaciones y todos los recursos y servicios proporcionados para el proyecto.
Un proyecto de Firebase puede tener una o más aplicaciones de Firebase registradas (por ejemplo, las versiones de una aplicación para iOS y Android, o las versiones gratuita y paga de una aplicación).
Todas las aplicaciones de Firebase registradas en el mismo proyecto compartido de Firebase y tienen acceso a los mismos recursos y servicios proporcionados para el proyecto . Aquí hay unos ejemplos:
Todas las aplicaciones de Firebase registradas en el mismo proyecto de Firebase comparten los mismos backends, como Firebase Hosting, Authentication, Realtime Database, Cloud Firestore, Cloud Storage y Cloud Functions.
Todas las aplicaciones de Firebase registradas en el mismo proyecto de Firebase están asociadas con la misma propiedad de Google Analytics, donde cada aplicación de Firebase es un flujo de datos independiente en esa propiedad.
Relación entre los proyectos de Firebase y Google Cloud
Cuando creas un nuevo proyecto de Firebase, en realidad estás creando un proyecto de Google Cloud detrás de escena. Incluso puedes crear un proyecto de Google Cloud primero y luego agregar Firebase al proyecto más tarde. Puede pensar en un proyecto de Google Cloud como un contenedor virtual de datos, código, configuración y servicios.
Tenga en cuenta que para todos los proyectos de Firebase, Firebase agrega automáticamente una etiqueta de firebase:enabled
dentro de la página Etiquetas de su proyecto en la consola de Google Cloud. Obtenga más información sobre esta etiqueta en nuestras preguntas frecuentes .
Dado que un proyecto de Firebase es un proyecto de Google Cloud:
Puedes interactuar con un proyecto en la consola de Firebase , así como en la consola de Google Cloud y en la consola de API de Google .
Puedes utilizar productos y API tanto de Firebase como de Google Cloud en un proyecto.
La facturación y los permisos de un proyecto se comparten entre Firebase y Google Cloud.
Los identificadores únicos de un proyecto (como el número y el ID del proyecto ) se comparten en Firebase y Google Cloud.
Al eliminar un proyecto, se elimina en Firebase y Google Cloud.
Configurar un proyecto de Firebase y registrar aplicaciones
Puedes configurar un proyecto de Firebase y registrar aplicaciones en Firebase console (o, para casos de uso avanzado, a través de la API REST de Firebase Management o Firebase CLI ). Cuando configuras un proyecto y registras aplicaciones, debes tomar algunas decisiones organizativas y agregar información de configuración específica de Firebase a tus proyectos locales.
Para las aplicaciones de producción, es necesario configurar un flujo de trabajo de desarrollo claro, que normalmente implica el uso de múltiples entornos. Revise nuestra documentación sobre flujos de trabajo para desarrolladores , incluidas las mejores prácticas generales y las pautas de seguridad generales para configurar proyectos de Firebase y registrar aplicaciones para crear su flujo de trabajo de desarrollo.
Interactuar con un proyecto de Firebase
Además de los SDK del producto, puedes interactuar directamente con un proyecto de Firebase utilizando varias herramientas e interfaces diferentes.
Consola de base de fuego
Firebase console ofrece el entorno más completo para administrar productos, aplicaciones y configuraciones a nivel de proyecto de Firebase.
El panel del lado izquierdo de la consola enumera los productos de Firebase, organizados por categorías de nivel superior. En la parte superior del panel del lado izquierdo, acceda a la configuración de un proyecto haciendo clic integraciones , permisos de acceso y facturación .
. La configuración de un proyecto incluyeEl centro de la consola muestra botones que inician flujos de trabajo de configuración para registrar varios tipos de aplicaciones. Después de comenzar a usar Firebase, el área principal de la consola se convierte en un panel que muestra estadísticas sobre los productos que usa.
Tenga en cuenta que, dado que un proyecto de Firebase también es un proyecto de Google Cloud, es posible que varias tareas o productos requieran que utilice la consola de Google Cloud en lugar de la consola de Firebase.
Firebase CLI (una herramienta de línea de comandos)
Firebase también ofrece Firebase CLI para configurar y administrar productos Firebase específicos, como Firebase Hosting, Cloud Functions para Firebase y Firebase Extensions.
Después de instalar la CLI, tendrá acceso al comando global firebase
. Utilice la CLI para vincular el directorio de su aplicación local a un proyecto de Firebase y luego implemente nuevas versiones de contenido alojado en Firebase o actualizaciones de funciones.
API REST de administración de Firebase
Con la API REST de Firebase Management , puedes administrar mediante programación un proyecto de Firebase. Por ejemplo, puede registrar mediante programación una aplicación con un proyecto o enumerar las aplicaciones que ya están registradas ( iOS+ | Android | web ).
Identificadores de proyectos de Firebase
Un proyecto de Firebase se puede identificar en el backend de Firebase y en varias interfaces de desarrollador usando diferentes identificadores, incluido el nombre del proyecto , el número del proyecto y el ID del proyecto .
El nombre del proyecto
Cuando creas un proyecto, proporcionas un nombre de proyecto . Este identificador es el nombre solo interno de un proyecto en Firebase console , Google Cloud console y Firebase CLI . El nombre del proyecto no está expuesto en ningún producto, servicio o recurso de Firebase o Google Cloud visible públicamente; simplemente sirve para ayudarle a distinguir más fácilmente entre múltiples proyectos.
Puedes editar el nombre de un proyecto en cualquier momento en la Configuración del proyecto de Firebase console. El nombre del proyecto se muestra en el panel superior.
El número del proyecto
Un proyecto de Firebase (y su proyecto de Google Cloud asociado ) tiene un número de proyecto . Este es el identificador canónico único global asignado por Google para el proyecto. Utilice este identificador al configurar integraciones y/o realizar llamadas API a Firebase, Google o servicios de terceros.
No puede editar un número de proyecto. Si elimina un proyecto, el número del proyecto también se elimina y ningún otro proyecto podrá volver a utilizarlo.
Encuentra el número de proyecto de tu proyecto de Firebase usando una de estas opciones:
Usando la consola Firebase : Haga clic Configuración del proyecto . El número del proyecto se muestra en el panel superior.
Usando Firebase CLI : ejecute
firebase projects:list
. El número de proyecto se muestra junto con todos los proyectos de Firebase asociados con su cuenta.Usando la API REST de Firebase Management : llame a
projects.list
. El cuerpo de la respuesta contiene el número del proyecto en el objetoFirebaseProject
.
Para muchas llamadas API, es necesario incluir un identificador único para un proyecto. Aunque muchas API aceptan el ID del proyecto , se recomienda utilizar el número de proyecto para realizar llamadas API a Firebase, Google o servicios de terceros.
Obtenga más información sobre el uso de identificadores de proyecto, especialmente el número de proyecto, en el estándar AIP 2510 de Google.
El identificador del proyecto
Un proyecto de Firebase (y su proyecto de Google Cloud asociado ) tiene un ID de proyecto . Este es un identificador único definido por el usuario para el proyecto en todo Firebase y Google Cloud. Cuando creas un proyecto de Firebase, Firebase asigna automáticamente una ID única al proyecto, pero puedes editarla durante la configuración del proyecto. Este identificador generalmente debe tratarse como un alias conveniente para hacer referencia al proyecto.
Encuentra el ID del proyecto de tu proyecto de Firebase usando una de estas opciones:
Usando la consola Firebase : Haga clic Configuración del proyecto . El ID del proyecto se muestra en el panel superior.
Usando Firebase CLI : ejecute
firebase projects:list
. El ID del proyecto se muestra junto con todos los proyectos de Firebase asociados con su cuenta.Usando la API REST de Firebase Management : llame a
projects.list
. El cuerpo de la respuesta contiene el ID del proyecto en el objetoFirebaseProject
.
El ID del proyecto se muestra en recursos de Firebase visibles públicamente, por ejemplo:
- Subdominio de alojamiento predeterminado:
PROJECT_ID .web.app
yPROJECT_ID .firebaseapp.com
- URL predeterminada de la base de datos en tiempo real:
PROJECT_ID -default-rtdb.firebaseio.com
oPROJECT_ID -default-rtdb. REGION_CODE .firebasedatabase.app
- Nombre del depósito predeterminado de Cloud Storage:
PROJECT_ID .appspot.com
Para todos los recursos antes mencionados, puede crear instancias no predeterminadas. Los nombres visibles públicamente de los no predeterminados son totalmente personalizables. Puede conectar dominios personalizados a un sitio alojado en Firebase, fragmentar Realtime Database y crear varios depósitos de Cloud Storage (visite la página de introducción específica de la plataforma).
En algunos casos de uso, es posible que tengas varios proyectos de Firebase asociados con el mismo directorio de aplicaciones locales. En estas situaciones, cuando usas Firebase CLI , debes pasar el indicador --project
con los comandos firebase
para comunicar con qué proyecto de Firebase deseas interactuar.
También puedes configurar un alias de proyecto para cada proyecto de Firebase para no tener que recordar los ID de los proyectos.
Para muchas llamadas API, es necesario incluir un identificador único para un proyecto. Aunque muchas API aceptan el ID del proyecto, se recomienda utilizar el número de proyecto para realizar llamadas API a Firebase, Google o servicios de terceros.
Obtenga más información sobre el uso de identificadores de proyecto, especialmente el número de proyecto, en el estándar AIP 2510 de Google.
Archivos y objetos de configuración de Firebase
Cuando registras una aplicación con un proyecto de Firebase, Firebase console proporciona un archivo de configuración de Firebase (aplicaciones de Apple/Android) o un objeto de configuración (aplicaciones web) que agregas directamente al directorio de tu aplicación local.
- Para las aplicaciones de Apple, agrega un archivo de configuración
GoogleService-Info.plist
. - Para aplicaciones de Android, agrega un archivo de configuración
google-services.json
. - Para aplicaciones web, agrega un objeto de configuración de Firebase.
En cualquier momento, puedes obtener el archivo u objeto de configuración de Firebase de una aplicación .
Un archivo u objeto de configuración de Firebase asocia una aplicación con un proyecto de Firebase específico y sus recursos (bases de datos, depósitos de almacenamiento, etc.). La configuración incluye "opciones de Firebase", que son parámetros requeridos por los servicios de Firebase y Google para comunicarse con las API del servidor de Firebase y asociar datos del cliente con el proyecto de Firebase y la aplicación de Firebase. Estas son las "opciones de Firebase" mínimas requeridas:
Clave API : una cadena cifrada simple que se utiliza al llamar a determinadas API que no necesitan acceder a datos privados del usuario (valor de ejemplo:
AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
).ID del proyecto : un identificador único definido por el usuario para el proyecto en todo Firebase y Google Cloud. Este identificador puede aparecer en las URL o en los nombres de algunos recursos de Firebase, pero generalmente debe tratarse como un alias conveniente para hacer referencia al proyecto. (valor de ejemplo:
myapp-project-123
)ID de aplicación ("AppID") : el identificador único de la aplicación Firebase en todo Firebase con un formato específico de la plataforma:
- Aplicaciones de Firebase Apple:
GOOGLE_APP_ID
(valor de ejemplo:1:1234567890:ios:321abc456def7890
)
Este no es un ID de paquete de Apple. - Aplicaciones de Firebase para Android:
mobilesdk_app_id
(valor de ejemplo:1:1234567890:android:321abc456def7890
)
Este no es el nombre de un paquete de Android ni el ID de una aplicación de Android. - Aplicaciones web de Firebase:
appId
(valor de ejemplo:1:65211879909:web:3ae38ef1cdcb2e01fe5f0c
)
- Aplicaciones de Firebase Apple:
El contenido del archivo u objeto de configuración de Firebase se considera público, incluido el ID específico de la plataforma de la aplicación (ID del paquete de Apple o nombre del paquete de Android) y los valores específicos del proyecto de Firebase, como la clave API, el ID del proyecto, la URL de la base de datos en tiempo real y Nombre del depósito de Cloud Storage. Teniendo esto en cuenta, utilice las reglas de seguridad de Firebase para proteger sus datos y archivos en Realtime Database , Cloud Firestore y Cloud Storage .
Para proyectos de código abierto, generalmente no recomendamos incluir el archivo u objeto de configuración de Firebase de la aplicación en el control de código fuente porque, en la mayoría de los casos, los usuarios deben crear sus propios proyectos de Firebase y apuntar sus aplicaciones a sus propios recursos de Firebase (a través de su propia configuración de Firebase). archivo u objeto).
Límites generales para proyectos, aplicaciones y sitios de Firebase
Estos son algunos límites generales para proyectos, aplicaciones y sitios de Firebase:
Número de proyectos por cuenta
- Plan de precios Spark: la cuota de creación de proyectos se limita a un número menor de proyectos (normalmente entre 5 y 10).
- Plan de precios Blaze: la cuota de creación de proyectos por cuenta aumenta sustancialmente siempre que la cuenta de facturación de Cloud asociada esté al día.
El límite de la cuota de creación de proyectos rara vez es una preocupación para la mayoría de los desarrolladores, pero si es necesario, puede solicitar un aumento en la cuota del proyecto .
Tenga en cuenta que la eliminación completa de un proyecto requiere 30 días y cuenta para la cuota del proyecto hasta que el proyecto se elimine por completo.
Número de aplicaciones por proyecto
Firebase restringe la cantidad total de aplicaciones de Firebase dentro de un proyecto de Firebase a 30.
Debes asegurarte de que todas las aplicaciones de Firebase dentro de un único proyecto de Firebase sean variantes de plataforma de la misma aplicación desde la perspectiva del usuario final. Lea más sobre el arrendamiento múltiple en nuestros documentos de mejores prácticas.
Obtenga más información sobre el límite de aplicaciones por proyecto en las preguntas frecuentes.
Número de sitios de Hosting por proyecto
La función multisitio de Firebase Hosting admite un máximo de 36 sitios por proyecto.
Lanzando tu aplicación
- Configure alertas de presupuesto para su proyecto en la consola de Google Cloud.
- Supervise el panel de Uso y facturación en Firebase console para obtener una imagen general del uso de su proyecto en múltiples servicios de Firebase.
- Revisa la lista de verificación de lanzamiento de Firebase .