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 específicos del producto a su aplicación, como Analytics, Cloud Firestore, Crashlytics o Remote Config.
Debes registrar tus variantes de Apple, Android y aplicaciones web dentro de un único proyecto de Firebase. Puedes usar varios proyectos de Firebase para admitir múltiples entornos, como desarrollo, ensayo y producción.
A continuación, se incluyen algunos recursos para obtener más información sobre los proyectos de Firebase:
Comprender los proyectos de Firebase : proporciona breves descripciones de varios conceptos importantes sobre los proyectos de Firebase, incluida su relación con Google Cloud y la jerarquía básica de un proyecto y sus aplicaciones y recursos.
Mejores prácticas generales para configurar proyectos de Firebase : proporciona mejores prácticas generales de alto nivel para configurar proyectos de Firebase y registrar sus aplicaciones con un proyecto para que tenga un flujo de trabajo de desarrollo claro que utilice distintos entornos.
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 Google Cloud Console. Obtenga más información sobre esta etiqueta en nuestras preguntas frecuentes .
¿Qué es una organización de Google Cloud?
Una organización de Google Cloud es un contenedor para proyectos de Google Cloud (incluidos los proyectos de Firebase). Esta jerarquía permite una mejor organización, gestión de acceso y auditoría de sus proyectos de Google Cloud y Firebase. Para obtener más información, consulte Creación y gestión de organizaciones .
¿Cómo agrego Firebase a un proyecto de Google Cloud existente?
Puedes agregar Firebase a estos proyectos existentes usando cualquiera de las siguientes opciones:
Usando la consola Firebase: En la página de inicio de Firebase console , haga clic en Agregar proyecto y luego seleccione su proyecto existente en el menú Nombre del proyecto .
Usando una opción programática:
Llame al punto final de la API REST de Firebase Management addFirebase .
¿Por qué mi proyecto de Google Cloud tiene la etiqueta firebase:enabled ?
En la página Etiquetas de su proyecto en Google Cloud Console, es posible que vea una etiqueta de firebase:enabled (específicamente, una Key de firebase con un Value de enabled ).
Firebase agregó automáticamente esta etiqueta porque su proyecto es un proyecto de Firebase, lo que significa que su proyecto tiene configuraciones y servicios específicos de Firebase habilitados. Obtenga más información sobre la relación entre los proyectos de Firebase y Google Cloud .
Le recomendamos encarecidamente que no modifique ni elimine esta etiqueta. Firebase y Google Cloud utilizan esta etiqueta para enumerar sus proyectos de Firebase (por ejemplo, usando el punto final de la API REST projects.list o en menús dentro de la consola de Firebase).
Tenga en cuenta que agregar manualmente esta etiqueta a su lista de etiquetas de proyecto NO habilita configuraciones ni servicios específicos de Firebase para su proyecto de Google Cloud. Para hacerlo, debe agregar Firebase a través de Firebase console (o, para casos de uso avanzado, a través de la API REST de Firebase Management o Firebase CLI ).
¿Por qué mi proyecto de Firebase no aparece en mi lista de proyectos de Firebase?
Estas preguntas frecuentes se aplican si no ves tu proyecto de Firebase en los siguientes lugares:
En una lista de proyectos que estás viendo en Firebase console
En la respuesta al ejecutar el comando Firebase CLI firebase projects:list
Pruebe estos pasos de solución de problemas:
Primero, intente acceder a su proyecto visitando directamente la URL del proyecto. Utilice el siguiente formato: https://console.firebase.google.com/project/ PROJECT-ID /overview
Si no puede acceder al proyecto o recibe errores de permisos, verifique lo siguiente:
Asegúrese de haber iniciado sesión en Firebase con la misma cuenta de Google que tiene acceso al proyecto. Puede iniciar y cerrar sesión en Firebase console a través del avatar de su cuenta en la esquina superior derecha de la consola.
Asegúrese de que su proyecto tenga la etiqueta firebase:enabled en la página Etiquetas de su proyecto en Google Cloud Console. Firebase y Google Cloud usan esta etiqueta para enumerar sus proyectos de Firebase. Si no ve esta etiqueta pero la API de administración de Firebase está habilitada para su proyecto, agregue manualmente la etiqueta (específicamente, una Key de firebase con un Valueenabled ).
Asegúrese de tener asignado uno de los roles básicos de IAM (Propietario, Editor, Visor) o un rol que tenga permisos relacionados con Firebase, por ejemplo, un rol predefinido de Firebase . Puede ver sus funciones en la página IAM de Google Cloud Console.
Si su proyecto pertenece a una organización de Google Cloud, es posible que necesite permisos adicionales para ver el proyecto listado en Firebase console. Póngase en contacto con la persona que administra su organización de Google Cloud para que le asigne la función adecuada para ver el proyecto, por ejemplo, la función de Navegador.
Si ninguno de los pasos de solución de problemas anteriores le permite ver su proyecto en una lista de proyectos de Firebase, comuníquese con el Soporte de Firebase .
¿Cuántos proyectos puedo tener por cuenta?
Plan de precios Spark: su cuota de proyectos está limitada a una pequeña cantidad de proyectos (generalmente entre 5 y 10).
Plan de precios Blaze: la cuota de su proyecto por cuenta de Cloud Billing aumenta sustancialmente siempre que su cuenta de Cloud Billing esté al día.
Tenga en cuenta que la eliminación completa de un proyecto requiere 30 días y cuenta para su cuota hasta que se elimine por completo.
¿Cuántas aplicaciones de Firebase puedo tener en un proyecto de Firebase?
Un proyecto de Firebase es un contenedor para aplicaciones de Firebase en Apple, Android y la web. Firebase restringe la cantidad total de aplicaciones de Firebase dentro de un proyecto de Firebase a 30.
Después de este número, el rendimiento comienza a degradarse (especialmente para Google Analytics) y, eventualmente, en una mayor cantidad de aplicaciones, algunas funciones del producto dejan de funcionar. Además, si utiliza el inicio de sesión de Google como proveedor de autenticación, se crea un ID de cliente OAuth 2.0 subyacente para cada aplicación de su proyecto. Hay un límite de alrededor de 30 ID de cliente que se pueden crear dentro de un solo proyecto.
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. Por ejemplo, si desarrollas una aplicación de marca blanca, cada aplicación etiquetada de forma independiente debe tener su propio proyecto de Firebase, pero las versiones de Apple y Android de esa etiqueta pueden estar en el mismo proyecto. Lea una guía más detallada en nuestras mejores prácticas generales para configurar proyectos de Firebase .
En el raro caso de que su proyecto requiera más de 30 aplicaciones, puede solicitar un aumento del límite de aplicaciones. Su proyecto debe estar en el plan de precios de Blaze para realizar esta solicitud. Visita Google Cloud Console para realizar tu solicitud y evaluarla. Obtenga más información sobre la gestión de cuotas en la documentación de Google Cloud.
¿Qué sucede si etiquete mi proyecto como entorno de "producción"?
En Firebase console, puedes etiquetar tus proyectos de Firebase con su tipo de entorno, ya sea como entornos de producción o no especificados (no de producción).
Etiquetar su proyecto como un tipo de entorno no tiene ningún efecto en el funcionamiento de su proyecto de Firebase ni en sus características. Sin embargo, el etiquetado puede ayudarlo a usted y a su equipo a administrar sus diversos proyectos de Firebase durante el ciclo de vida de la aplicación.
Si etiqueta su proyecto como entorno de producción, agregamos una etiqueta Prod de colores brillantes al proyecto en Firebase console, para recordarle que cualquier cambio podría afectar sus aplicaciones de producción asociadas. En el futuro, es posible que agreguemos más funciones y protecciones para los proyectos de Firebase etiquetados como entornos de producción.
Para cambiar el tipo de entorno de su proyecto de Firebase, vaya a settingsConfiguración del proyecto > General , luego en la tarjeta Su proyecto en Entorno , haga clic en edit para cambiar el tipo de entorno.
¿Dónde puedo encontrar el ID de la aplicación para mi aplicación Firebase?
En Firebase console, ve a tu settingsConfiguración del proyecto . Desplácese hacia abajo hasta la tarjeta Sus aplicaciones , luego haga clic en la aplicación Firebase deseada para ver la información de la aplicación, incluido su ID de aplicación .
A continuación se muestran algunos valores de ID de aplicación de ejemplo:
Aplicaciones de Firebase para iOS: 1:1234567890:ios:321abc456def7890
Aplicaciones de Firebase para Android: 1:1234567890:android:321abc456def7890
Aplicaciones web de Firebase: 1:1234567890:web:321abc456def7890
¿Cuáles son los requisitos previos para vincular Google Play/AdMob/Google Ads/BigQuery a mi proyecto o aplicación de Firebase?
Cualquiera de los siguientes roles de Firebase: propietario o administrador de Firebase y
Cualquiera de los siguientes niveles de acceso a Google Play: propietario de la cuenta o administrador
Para vincular tu aplicación de AdMob , debes ser propietario del proyecto de Firebase y administrador de AdMob.
Para vincular su cuenta de AdWords , debe ser propietario del proyecto de Firebase y administrador de AdWords.
Para vincular tu proyecto de BigQuery , debes ser el propietario del proyecto de Firebase.
¿Qué avisos de código abierto debo incluir en mi aplicación?
En las plataformas Apple, el pod de Firebase contiene un archivo NOTICES que incluye las entradas relevantes. El SDK de Firebase para Android contiene una Activity auxiliar para mostrar información de licencia.
Permisos y acceso a proyectos de Firebase
¿Cómo le asigno un rol a un miembro del proyecto, como el rol de Propietario?
Para administrar las funciones asignadas a cada miembro del proyecto, debes ser propietario del proyecto de Firebase (o tener asignada una función con el permiso resourcemanager.projects.setIamPolicy ).
Estos son los lugares donde puede asignar y administrar roles:
Google Cloud Console ofrece un amplio conjunto de herramientas para asignar roles a los miembros del proyecto en la página IAM . En Cloud Console, también puedes crear y administrar roles personalizados , así como dar acceso a cuentas de servicio a tu proyecto.
Tenga en cuenta que en Google Cloud Console, los miembros del proyecto se denominan directores .
Si el propietario de su proyecto ya no puede realizar las tareas de un propietario (por ejemplo, la persona dejó su empresa) y su proyecto no se administra a través de una organización de Google Cloud (consulte el siguiente párrafo), puede comunicarse con el soporte de Firebase para obtener un propietario temporal asignado.
Tenga en cuenta que si un proyecto de Firebase forma parte de una organización de Google Cloud, es posible que no tenga un propietario. Si no puedes encontrar un propietario para tu proyecto de Firebase, comunícate con la persona que administra tu organización de Google Cloud para asignar un propietario para el proyecto.
¿Cómo encuentro al propietario de un proyecto de Firebase?
Puede ver los miembros del proyecto y sus roles en los siguientes lugares:
Si tiene acceso al proyecto en Firebase console, puede ver la lista de miembros del proyecto, incluidos los propietarios, en la página Usuarios y permisos de Firebase console.
Si no tiene acceso al proyecto en Firebase console, verifique si tiene acceso al proyecto en Google Cloud Console. Puede ver la lista de miembros del proyecto, incluidos los propietarios, en la página IAM de Google Cloud Console.
Si el propietario de su proyecto ya no puede realizar las tareas de un propietario (por ejemplo, la persona dejó su empresa) y su proyecto no se administra a través de una organización de Google Cloud (consulte el siguiente párrafo), puede comunicarse con el soporte de Firebase para obtener un propietario temporal asignado.
Tenga en cuenta que si un proyecto de Firebase forma parte de una organización de Google Cloud, es posible que no tenga un propietario. En cambio, la persona que administra su organización de Google Cloud puede realizar muchas tareas que puede realizar un propietario. Sin embargo, para realizar varias tareas específicas del Propietario (como asignar roles o administrar propiedades de Google Analytics), es posible que el administrador deba asignarse el rol de Propietario real para realizar esas tareas. Si no puedes encontrar un propietario para tu proyecto de Firebase, comunícate con la persona que administra tu organización de Google Cloud para asignar un propietario para el proyecto.
¿Por qué o cuándo debería asignarle a un miembro del proyecto el rol de Propietario?
Para garantizar una gestión adecuada de un proyecto de Firebase, este debe tener un Propietario . El propietario de un proyecto es la persona que puede realizar varias acciones administrativas importantes (como asignar roles y administrar propiedades de Google Analytics), y el soporte de Firebase solo puede cumplir con las solicitudes administrativas de los propietarios de proyectos demostrados.
Después de configurar los propietarios de un proyecto de Firebase, es importante mantener esas asignaciones actualizadas.
Tenga en cuenta que si un proyecto de Firebase forma parte de una organización de Google Cloud, la persona que administra su organización de Google Cloud puede realizar muchas tareas que puede realizar un propietario. Sin embargo, para varias tareas específicas del Propietario (como asignar roles o administrar propiedades de Google Analytics), es posible que el administrador deba asignarse el rol de Propietario real para realizar esas tareas.
No creo que tenga un proyecto de Firebase, pero recibí un correo electrónico sobre uno. ¿Cómo accedo a este proyecto?
El correo electrónico que recibió debe contener un enlace para abrir su proyecto de Firebase. Al hacer clic en el enlace del correo electrónico, se debería abrir el proyecto en Firebase console.
Si no puede abrir el proyecto en el enlace, asegúrese de haber iniciado sesión en Firebase con la misma cuenta de Google que recibió el correo electrónico sobre el proyecto. Puede iniciar y cerrar sesión en Firebase console a través del avatar de su cuenta en la esquina superior derecha de la consola.
Tenga en cuenta que si es administrador de una organización de Google Cloud, es posible que reciba notificaciones sobre cambios en los proyectos de Firebase dentro de su organización. Sin embargo, es posible que no tengas permisos suficientes para abrir el proyecto de Firebase. En estos casos, la solución más sencilla es asignarse el rol de Propietario real para abrir el proyecto y realizar las acciones necesarias. Obtenga más información sobre por qué y cuándo asignar el rol de Propietario .
Plataformas y marcos
Visite las páginas de preguntas frecuentes y solución de problemas específicas de la plataforma para obtener consejos útiles y respuestas a más preguntas frecuentes.
¿Cuáles son los navegadores compatibles para acceder a Firebase console?
Se puede acceder a la consola Firebase desde versiones recientes de navegadores de escritorio populares como Chrome, Firefox, Safari y Edge. Actualmente, los navegadores móviles no son totalmente compatibles.
Puedo cargar la consola de Firebase, pero ¿por qué no puedo encontrar ni acceder a mi proyecto de Firebase?
Estas preguntas frecuentes son aplicables si experimenta alguno de los siguientes problemas:
La consola de Firebase devuelve una página de error que dice que es posible que su proyecto no exista o que no tiene acceso al proyecto.
Firebase console no muestra tu proyecto incluso cuando ingresas su ID o nombre de proyecto en el campo de búsqueda de la consola.
Pruebe estos pasos de solución de problemas:
Primero, intente acceder a su proyecto visitando directamente la URL del proyecto. Utilice el siguiente formato: https://console.firebase.google.com/project/ PROJECT-ID /overview
Si aún no puedes acceder al proyecto o recibes errores de permisos, verifica lo siguiente:
Asegúrese de haber iniciado sesión en Firebase con la misma cuenta de Google que tiene acceso al proyecto. Puede iniciar y cerrar sesión en Firebase console a través del avatar de su cuenta en la esquina superior derecha de la consola.
Asegúrese de tener asignado uno de los roles básicos de IAM (Propietario, Editor, Visor) o un rol que tenga permisos relacionados con Firebase, por ejemplo, un rol predefinido de Firebase . Puede ver sus funciones en la página IAM de Google Cloud Console.
Si su proyecto pertenece a una organización de Google Cloud, es posible que necesite permisos adicionales para ver el proyecto listado en Firebase console. Póngase en contacto con la persona que administra su organización de Google Cloud para que le asigne la función adecuada para ver el proyecto, por ejemplo, la función de Navegador.
Si ninguno de los pasos de solución de problemas anteriores le permite encontrar o acceder a su proyecto, comuníquese con el soporte de Firebase .
¿Por qué no me carga la consola Firebase?
Estas preguntas frecuentes son aplicables si tiene alguno de los siguientes problemas:
Una página en Firebase console nunca termina de cargarse.
Los datos dentro de una página no se cargan como se esperaba.
Recibe mensajes de error del navegador al cargar Firebase console.
Pruebe estos pasos de solución de problemas:
Verifique la fila de la Consola del Panel de estado de Firebase para detectar posibles interrupciones del servicio.
Para cambiar su preferencia de idioma, consulte Cambiar idioma .
La consola Firebase admite los siguientes idiomas:
Inglés
Portugués Brasileño
Francés
Alemán
indonesio
japonés
coreano
ruso
Chino simplificado
Español
Chino tradicional
¿Qué roles y permisos admite la consola Firebase?
Firebase console y Google Cloud Console usan los mismos roles y permisos subyacentes. Obtenga más información sobre roles y permisos en la documentación de Firebase IAM .
El propietario de un proyecto puede agregar otros miembros al proyecto, configurar integraciones (vinculación del proyecto a servicios como BigQuery o Slack) y tener acceso completo a la edición del proyecto.
Un editor de proyecto tiene acceso completo a la edición del proyecto.
Un visor de proyectos solo tiene acceso de lectura para el proyecto. Tenga en cuenta que Firebase console actualmente no oculta ni deshabilita los controles de edición de la interfaz de usuario de los visores del proyecto, pero estas operaciones fallarán para los miembros del proyecto a los que se les haya asignado la función de visor.
Firebase también admite:
Roles predefinidos de Firebase : roles seleccionados específicos de Firebase que permiten un control de acceso más granular que los roles básicos de Propietario, Editor y Visor.
Roles personalizados : roles de IAM totalmente personalizados que usted crea para adaptar un conjunto de permisos que cumplan con los requisitos específicos de su organización.
Precios
¿Qué productos son de pago? ¿Cuáles son sin costo?
Los productos de infraestructura pagos de Firebase son Realtime Database, Cloud Storage para Firebase, Cloud Functions, Hosting, Test Lab y autenticación telefónica. Ofrecemos un nivel sin costo para todas estas funciones.
Firebase también tiene muchos productos sin costo: análisis, mensajería en la nube, compositor de notificaciones, configuración remota, indexación de aplicaciones, enlaces dinámicos e informes de fallas. Puede utilizar una cantidad ilimitada de cualquiera de estos productos en todos los planes, incluido nuestro plan Spark sin costo. Además, todas las funciones de autenticación más allá de la autenticación telefónica no tienen costo.
¿Firebase ofrece créditos de prueba sin costo para productos pagos?
Los servicios pagos de Firebase se pueden utilizar con la prueba gratuita de Google Cloud . Los nuevos usuarios de Google Cloud y Firebase pueden aprovechar un período de prueba de 90 días que incluye $300 en créditos gratuitos de facturación de Cloud para explorar y evaluar los productos y servicios de Google Cloud y Firebase.
Durante el período de prueba gratuita de Google Cloud, se le proporcionará una cuenta de facturación en la nube de prueba gratuita. Cualquier proyecto de Firebase que utilice esa cuenta de facturación estará en el plan de precios de Blaze durante el período de prueba gratuito.
No se preocupe, configurar esta cuenta de facturación en la nube de prueba gratuita no nos permite cobrarle. No se le cobrará a menos que habilite explícitamente la facturación actualizando su cuenta de facturación en la nube de prueba gratuita a una cuenta paga. Puede actualizar a una cuenta paga en cualquier momento durante la prueba. Después de haber actualizado, aún puedes usar los créditos restantes (dentro del período de 90 días).
Una vez que caduque la prueba gratuita, deberás degradar tu proyecto al plan de precios de Spark o configurar el plan de precios de Blaze en Firebase console para continuar usando tu proyecto de Firebase.
¿Cómo sé qué plan de precios es el adecuado para mí?
Plan de precios Spark
Nuestro plan Spark es un excelente lugar para desarrollar su aplicación sin costo alguno. Obtendrá todas las funciones de Firebase sin costo (Analytics, el compositor de notificaciones, Crashlytics, etc.) y cantidades generosas de nuestras funciones de infraestructura pagas. Sin embargo, si excede los recursos de su plan Spark en un mes calendario, su aplicación se cerrará por el resto de ese mes. Además, las funciones de Google Cloud no están disponibles cuando se utiliza el plan Spark.
Plan de precios Blaze
Nuestro plan Blaze está diseñado para aplicaciones de producción. El plan Blaze también te permite ampliar tu aplicación con funciones pagas de Google Cloud. Paga solo por los recursos que consume, lo que le permite escalar con la demanda. Nos esforzamos por hacer que los precios de nuestros planes Blaze sean competitivos con los proveedores de nube líderes en la industria.
¿Cómo puedo monitorear mi uso y facturación?
Puedes realizar un seguimiento del uso de los recursos del proyecto en Firebase console en cualquiera de los siguientes paneles:
En enero de 2020, el plan de precios Flame ($25/mes de cuota adicional) se eliminó como opción para nuevos registros. A los usuarios del plan existente se les concedió un período de gracia para migrar sus proyectos fuera del plan Flame. En febrero de 2022, los proyectos restantes del plan de precios Flame se rebajaron al plan de precios Spark. Respectivamente,
Los proyectos existentes de los planes Spark y Blaze y cualquier proyecto nuevo ya no pueden cambiarse ni registrarse en el plan Flame.
Si movió un proyecto del plan Flame existente a un plan de precios diferente, el proyecto no puede volver al plan Flame.
Los proyectos degradados al plan Spark se pueden actualizar al plan Blaze para reanudar servicios pagos adicionales.
Las referencias al plan Flame se han eliminado de la documentación.
¿Quieres conocer los otros planes de precios que ofrece Firebase? ¡Visite nuestra página de precios de Firebase ! Si desea comenzar a trasladar cualquier proyecto existente a otro plan de precios, puede hacerlo en la consola Firebase de su proyecto.
Preguntas frecuentes adicionales sobre la jubilación del plan Flame
Tengo un proyecto, un proceso o un modelo de negocio que se basa en un costo fijo de Firebase. ¿Qué tengo que hacer?
¿Puedo recibir acceso especial para crear nuevos proyectos del plan Flame?
No, Firebase no ofrece acceso especial para que los proyectos cambien o se registren en el plan Flame.
Cambié mi proyecto del plan Flame a un plan de precios diferente. ¿Cómo lo vuelvo a cambiar?
Ya no es posible cambiar al plan Flame. Para acceder a los servicios proporcionados por el plan Flame, asegúrese de utilizar el plan de precios Blaze y considere configurar alertas de presupuesto para su proyecto.
Mi proyecto cambió automáticamente a un plan de precios diferente como parte del retiro del plan Flame. ¿Qué tengo que hacer?
Si su proyecto requiere una cuota adicional más allá de la proporcionada con el plan Spark, deberá actualizar su proyecto al plan de precios Blaze.
¿Por qué se retira el plan Flame?
A lo largo de los años, hemos visto una disminución en el uso del plan Flame y la mayoría de los proyectos que utilizan el plan no consumen su valor total. Mantener este plan de precios generalmente no es rentable y creemos que podemos brindar un mejor servicio a todos si los recursos se destinaran a otras iniciativas de Firebase.
¿En qué se diferencia el uso sin costo en el plan Blaze del uso sin costo en el plan Spark?
El uso sin costo en el plan Blaze se calcula diariamente. Los límites de uso también difieren del plan Spark para Cloud Functions, autenticación telefónica y Test Lab.
Para Cloud Functions, el uso sin costo en el plan Blaze se calcula en el nivel de cuenta de Cloud Billing, no en el nivel de proyecto y tiene los siguientes límites:
2M invocaciones/mes
400.000 GB-segundos/mes
200.000 segundos de CPU/mes
5 GB de salida de red/mes
Para la autenticación telefónica, el uso sin costo en el plan Blaze se calcula mensualmente.
Para Test Lab, el uso sin costo en el plan Blaze tiene los siguientes límites:
30 minutos de dispositivo físico/día
60 minutos de dispositivo virtual/día
¿Se restablece la cuota de uso sin costo cuando cambio de un plan Spark a un plan Blaze?
El uso sin costo del plan Spark está incluido en el plan Blaze. El uso sin costo no se restablece al pasar a un plan Blaze.
¿Qué es una "conexión simultánea a una base de datos"?
Una conexión simultánea equivale a un dispositivo móvil, una pestaña del navegador o una aplicación de servidor conectada a la base de datos. Firebase impone límites estrictos a la cantidad de conexiones simultáneas a la base de datos de su aplicación. Estos límites existen para proteger tanto a Firebase como a nuestros usuarios del abuso.
El límite del plan Spark es 100 y no se puede aumentar. Los planes Flame y Blaze tienen un límite de 200.000 conexiones simultáneas por base de datos.
Este límite no es lo mismo que la cantidad total de usuarios de su aplicación, porque no todos sus usuarios se conectan a la vez. Si necesita más de 200.000 conexiones simultáneas, lea Escalar con múltiples bases de datos .
¿Qué sucede si supero los límites de almacenamiento o descarga del plan Spark para Realtime Database?
Para ofrecerle un precio predecible, los recursos disponibles para usted en los planes Spark tienen un límite. Esto significa que cuando exceda el límite de cualquier plan en cualquier mes, su aplicación se desactivará para evitar el uso adicional de recursos y cargos adicionales.
¿Qué sucede si excedo los límites de conexión simultánea del plan Spark para Realtime Database?
Cuando su aplicación alcance su límite de simultaneidad en el plan Spark, cualquier conexión posterior se rechazará hasta que se cierren algunas de las conexiones existentes. La aplicación seguirá funcionando para los usuarios que estén conectados.
¿Cómo funciona la integración de Firebase con Google Cloud?
Firebase está profundamente integrado con Google Cloud . Los proyectos se comparten entre Firebase y Google Cloud, por lo que los proyectos pueden tener habilitados los servicios de Firebase y Google Cloud. Puede acceder al mismo proyecto desde Firebase console o Google Cloud Console. Específicamente:
Ciertos productos de Firebase están respaldados directamente por Google Cloud, como Cloud Storage para Firebase. La lista de productos respaldados por Google Cloud seguirá creciendo con el tiempo.
Firebase y Google Cloud comparten muchas de sus configuraciones, incluidos los colaboradores y la información de facturación. Tu uso de Firebase y Google Cloud aparece en la misma factura.
Además, cuando actualiza al plan Blaze, puede usar cualquiera de las API y la infraestructura como servicio de clase mundial de Google Cloud directamente dentro de su proyecto de Firebase, al precio estándar de Google Cloud . También puedes exportar datos desde Google Cloud directamente a BigQuery para su análisis. Para obtener más información, consulta Vincular BigQuery con Firebase.
Hay muchos beneficios que mejoran la seguridad, la latencia y el ahorro de tiempo al usar Google Cloud con Firebase (en comparación con otros servicios en la nube que no están ubicados en el mismo lugar). Consulte el sitio de Google Cloud para obtener más detalles.
¿Qué sucede con mi proyecto de Firebase si agrego o elimino cuentas de facturación para ese proyecto en Google Cloud Console?
Si se agrega una cuenta de facturación de Cloud a un proyecto en Google Cloud Console, el mismo proyecto se actualizará automáticamente al plan Firebase Blaze si ese proyecto se encuentra actualmente en el plan Spark.
Por el contrario, si una cuenta de facturación de Cloud activa existente se elimina de un proyecto en Google Cloud Console, ese proyecto se degradará al plan Firebase Spark.
¿Puedo actualizar, degradar o cancelar en cualquier momento?
Sí, puedes actualizar, degradar o cancelar en cualquier momento. Tenga en cuenta que no ofrecemos reembolsos prorrateados por rebajas o cancelaciones. Esto significa que si baja de categoría o cancela antes del final de su período de facturación, aún pagará el resto del mes.
¿Qué tipo de apoyo recibiré?
Todas las aplicaciones de Firebase, incluidas aquellas que usan planes sin costo, cuentan con soporte por correo electrónico del personal de Firebase durante el horario comercial del Pacífico de EE. UU. Todas las cuentas tienen soporte ilimitado para problemas relacionados con la facturación, problemas relacionados con la cuenta, preguntas técnicas (solución de problemas) e informes de incidentes.
¿Puedo limitar el uso en el plan Blaze?
No, actualmente no puedes limitar el uso de tu plan Blaze. Estamos evaluando opciones para admitir límites en el uso del plan Blaze.
Los usuarios de Blaze pueden definir un presupuesto para su proyecto o cuenta y recibir alertas cuando sus gastos se acerquen a esos límites. Aprenda a configurar alertas de presupuesto .
¿Qué son las copias de seguridad automáticas? ¿Ofrecen copias de seguridad cada hora?
Las copias de seguridad automatizadas son una función avanzada para los clientes de nuestro plan de precios Blaze que realiza una copia de seguridad de los datos de Firebase Realtime Database una vez al día y los carga en Google Cloud Storage .
No ofrecemos copias de seguridad por horas.
¿Ofrecen descuentos educativos, sin fines de lucro o de código abierto?
Nuestro plan Spark puede ser utilizado por cualquier tipo de individuo u organización, incluidas organizaciones sin fines de lucro, escuelas y proyectos de código abierto. Dado que estos planes ya incluyen cuotas generosas, no ofrecemos descuentos ni planes especiales para proyectos educativos, sin fines de lucro o de código abierto.
¿Ofrecen contratos empresariales, precios, soporte o alojamiento de infraestructura dedicada?
Nuestro plan Blaze es adecuado para empresas de todos los tamaños y nuestro SLA cumple o supera el estándar de la industria para infraestructura de nube. Sin embargo, actualmente no ofrecemos contratos empresariales, precios o soporte, ni ofrecemos alojamiento de infraestructura dedicado (es decir, instalaciones locales) para servicios como nuestra base de datos en tiempo real. Estamos trabajando duro agregando algunas de estas características.
¿Ofrecen precios ad-hoc? Solo quiero pagar por ti por una o dos características.
Ofrecemos precios ad-hoc en el plan Blaze, donde paga solo por las características que utiliza.
¿Cómo funcionan los planes de Firebase pagados con anuncios? ¿Hay créditos publicitarios sin costo con planes pagados?
Los planes de precios de Firebase están separados de los anuncios, por lo que no hay créditos publicitarios sin costo. Como desarrollador de Firebase, puede "vincular" su cuenta de anuncios con Firebase para admitir el seguimiento de conversión.
Todas las campañas de anuncios se administran directamente en anuncios, y la facturación de anuncios se gestiona desde la consola de anuncios.
Precios de funciones en la nube
¿Por qué necesito una cuenta de facturación para usar funciones en la nube para Firebase?
Las funciones en la nube para Firebase se basan en algunos servicios de Google pagados. Las nuevas implementaciones de funciones con Firebase CLI 11.2.0 y superiores dependen de la construcción de la nube y el registro de artefactos . Las implementaciones en versiones anteriores usan la construcción de la nube de la misma manera, pero confían en el registro de contenedores y el almacenamiento en la nube para el almacenamiento en lugar del registro de artefactos. El uso de estos servicios se facturará además de los precios existentes.
Espacio de almacenamiento para Firebase CLI 11.2.0 y versiones más nuevas
Artifact Registry proporciona los contenedores en los que se ejecutan las funciones. Artifact Registry proporciona los primeros 500 MB sin costo, por lo que sus primeras implementaciones de funciones pueden no incurrir en ninguna tarifa. Por encima de ese umbral, cada GB adicional de almacenamiento se factura a $ 0.10 por mes.
Espacio de almacenamiento para Firebase CLI 11.1.x y versiones anteriores
Para las funciones implementadas en versiones anteriores, el registro de contenedores proporciona los contenedores en los que se ejecutan las funciones. Se le facturará por cada contenedor requerido para implementar una función. Puede notar pequeños cargos por cada contenedor almacenado, por ejemplo, 1 GB de almacenamiento se factura a $ 0.026 por mes .
Para comprender más sobre cómo podría cambiar su factura, revise lo siguiente
¿Las funciones en la nube para Firebase todavía tienen un uso sin costo?
Sí. En el plan Blaze, las funciones en la nube proporcionan un nivel sin costo para las invocaciones, el tiempo de cálculo y el tráfico de Internet. Las primeras 2,000,000 de invocaciones, 400,000 GB-SEC, 200,000 CPU-SEC y 5 GB de tráfico de salida de Internet se proporcionan sin costo cada mes. Se le cobrará solo por uso por encima de esos umbrales.
Después de los primeros 500 MB de almacenamiento sin costo, cada operación de implementación incurrirá en cargos a pequeña escala para el espacio de almacenamiento utilizado para el contenedor de la función. Si su proceso de desarrollo depende de la implementación de funciones para las pruebas, puede minimizar aún más los costos utilizando el conjunto de emuladores locales de Firebase durante el desarrollo.
¿Firebase planea elevar las cuotas y los límites para las funciones de la nube para Firebase?
No. No hay planes para cambiar las cuotas, excepto la eliminación de un límite de tiempo de construcción máximo; En lugar de recibir errores o advertencias cuando se alcanza la cuota de construcción diaria de 120 minutos, se le facturará bajo los términos del plan de precios de incendio. Ver cuotas y límites .
¿Puedo obtener el crédito de Google Cloud $ 300?
Sí, puede crear una cuenta de facturación en la nube en la consola de Google Cloud para obtener el crédito de $ 300, luego vincular esa cuenta de facturación en la nube a un proyecto Firebase.
Tenga en cuenta que si hace esto, debe configurar el plan de precios Blaze en la consola Firebase para que su proyecto continúe funcionando después de agotarse el crédito de $ 300.
Quiero seguir un Codelab para aprender sobre Firebase. ¿Puedes darme una cuenta de facturación temporal?
No lo siento. Puede usar el emulador Firebase para el desarrollo sin tener una cuenta de facturación en la nube. Alternativamente, intente solicitar una prueba gratuita de Google Cloud . Si todavía tiene problemas para pagar su factura debido a este cambio, comuníquese con Firebase Support.
Para usar extensiones, deberá actualizar al plan de precios Blaze. Se le cobrará una pequeña cantidad (generalmente alrededor de $ 0.01 por mes por los recursos de Firebase requeridos por cada extensión que instale (incluso si no se usa), además de cualquier cargo asociado con su uso de servicios de Firebase.
Almacenamiento en la nube para precios de Firebase
¿Cómo predico cuánto me facturarán las operaciones de carga y descarga?
Visite la página de precios de Firebase y use la calculadora del plan Blaze . La calculadora enumera todos los tipos de uso para el almacenamiento en la nube para Firebase.
Use los controles deslizantes para ingresar el uso esperado de su cubo de almacenamiento. La calculadora estimará su factura mensual.
¿Qué sucede si excedo los límites de carga, descarga o almacenamiento de Spark Plan para el almacenamiento en la nube para Firebase?
Cuando excede los límites para el almacenamiento en la nube en un proyecto en el plan Spark, el resultado depende del tipo de límite que exceda:
Si excede el límite almacenado de GB , no podrá almacenar más datos en ese proyecto a menos que elimine algunos de los datos almacenados o actualice a un plan que proporcione más espacio de almacenamiento o espacio de almacenamiento ilimitado.
Si excede el límite descargado de GB , su aplicación no podrá descargar más datos hasta el día siguiente (a partir de la medianoche, el tiempo del Pacífico de EE. UU.), A menos que actualice a un plan con límites menos restrictivos o sin límites.
Si excede el límite de operaciones de carga o descarga , su aplicación no podrá cargar o descargar más datos hasta el día siguiente (a partir de la medianoche, la hora del Pacífico de los Estados Unidos), a menos que actualice a un plan con límites menos restrictivos, o sin No límites.
Privacidad
¿Dónde puedo encontrar información sobre privacidad y seguridad en Firebase?
¿Los SDK de Firebase registran alguna información de uso/diagnóstico fuera del análisis?
Sí. Esto es actualmente solo iOS, pero puede cambiar en el futuro. El SDK de las plataformas de Apple Firebase incluye el marco FirebaseCoreDiagnostics de forma predeterminada. Firebase utiliza este marco para recopilar información de uso y diagnóstico de SDK para ayudar a priorizar futuras mejoras de productos. FirebaseCoreDiagnostics es opcional, por lo que si desea no enviar los registros de diagnóstico de Firebase, puede hacerlo sin beber la biblioteca de su aplicación. Puede navegar por la fuente completa, incluidos los valores registrados, en GitHub
Pruebas A/B
Pruebas A/B: ¿Cuántos experimentos puedo crear y ejecutar?
Se le permite hasta 300 experimentos por proyecto, lo que podría consistir en hasta 24 experimentos de ejecución, con el resto como borrador o completado.
Pruebas A/B: ¿Por qué no puedo ver mis experimentos después de no beber y volver a beber mi proyecto a Google Analytics?
Vinculación con una propiedad diferente de Google Analytics hará que pierda el acceso a los experimentos creados de antemano. Para recuperar el acceso a un experimento anterior, vuelva a vincular su proyecto a la propiedad de Google Analytics que estaba vinculada cuando se creó el experimento.
Pruebas A/B: ¿Por qué recibo un mensaje "Proyecto no vinculado a Google Analytics" al crear un experimento de configuración remota?
Si ya ha vinculado Firebase y Google Analytics , pero aún considera un mensaje de que Google Analytics no está vinculado, asegúrese de que exista un flujo de análisis para todas las aplicaciones en su proyecto. Actualmente, todas las aplicaciones en un proyecto deben estar conectadas a una transmisión de Google Analytics para usar pruebas A/B.
Puede encontrar la lista de todas las transmisiones activas en la página Detalles de integración de Google Analytics dentro de la consola Firebase, accedida desde settingsdel proyecto Configuraciónchevron_rightIntegrationschevron_rightGoogle Analyticschevron_rightAdministrar .
Creación de una transmisión de Google Analytics para cualquier aplicación que no tenga una debería resolver el problema. Hay algunas formas de crear transmisiones para aplicaciones faltantes:
Si solo tiene una o dos aplicaciones que faltan una transmisión de Google Analytics asociada, puede elegir uno de los siguientes métodos para agregar una transmisión de Google Analytics:
Elimine y vuelva a agregar cualquier aplicación sin una secuencia activa en la consola Firebase.
Desde la consola de Google Analytics , seleccione Administrador , haga clic en Streams de datos , luego haga clic en Agregar transmisión , agregue los detalles de la aplicación faltante y haga clic en la aplicación Registre .
Si tiene más de unas pocas transmisiones de aplicaciones faltantes, no beber y rellenar su propiedad de Google Analytics es la forma más rápida y eficiente de crear las transmisiones de aplicaciones que faltan:
Desde settingsdel proyecto Configuración , seleccione Integraciones .
Dentro de la tarjeta de Google Analytics , haga clic en Administrar para acceder a la configuración de Firebase y Google Analytics.
Tenga en cuenta la ID de propiedad de Google Analytics y la cuenta vinculada de Google Analytics .
Haga clic more_vertmás y seleccione Unlink Analytics de este proyecto .
Revise la advertencia que aparece (no se preocupe aquí; volverá a relacionar la misma propiedad en el siguiente paso), luego haga clic en Unlink Google Analytics .
Cuando no se complete la no bebida, será redirigido a la página de integraciones .
Dentro de la tarjeta de Google Analytics , haga clic en Habilitar para comenzar el proceso de relleno.
Seleccione su cuenta de análisis de la lista de cuenta Seleccionar .
A continuación , crear automáticamente una nueva propiedad en esta cuenta , haga clic en editeditar y, desde la lista de propiedades de análisis que aparezca, seleccione su ID de propiedad.
Aparece una lista de todas las aplicaciones en su proyecto. Se enumeran las asignaciones de transmisión existentes para cada aplicación, y las aplicaciones que no tienen una secuencia tendrán una creada para ellas.
Haga clic en Habilitar Google Analytics para volver a relacionar la propiedad.
ADMOB: Para usar ADMOB, ¿debo usar el SDK de Firebase para ADMOB o el SDK de Google Mobile ADS?
Para proyectos de iOS , use el SDK de Google Mobile ADS: pod 'Google-Mobile-Ads-SDK'
Para proyectos de Android , use el SDK de Google Mobile ADS: implementation 'com.google.android.gms:play-services-ads:22.5.0'
Tenga en cuenta que los SDK de Firebase Android para ADMOB incluyen transitivamente el SDK de Firebase para Google Analytics. Entonces, si su aplicación llama a cualquier API de Google Analytics y cambia a usar el SDK de los anuncios de Google Mobile, asegúrese de agregar explícitamente la dependencia del SDK de Firebase para Google Analytics ( com.google.firebase:firebase-analytics ) build.gradle archivo.
Análisis: ¿Por qué Google Analytics es una parte recomendada del uso de productos Firebase?
Google Analytics es una solución de analítica gratuita e ilimitada que funciona con las características de Firebase para ofrecer ideas potentes. Le permite ver registros de eventos en Crashlytics, efectividad de notificación en FCM, rendimiento de enlaces profundos para enlaces dinámicos y datos de compra en la aplicación de Google Play. Impulsa la orientación de audiencia avanzada en configuración remota, personalización de configuración remota y más.
Google Analytics actúa como una capa de inteligencia en la consola Firebase para proporcionarle información más procesable sobre cómo desarrollar una aplicación de alta calidad, hacer crecer su base de usuarios y ganar más dinero.
Análisis: ¿Cómo controlo cómo se comparten mis datos de análisis con el resto de Firebase?
De manera predeterminada, sus datos de Google Analytics se utilizan para mejorar otras características de Firebase y Google. Puede controlar cómo se comparten sus datos de Google Analytics en la configuración de su proyecto en cualquier momento. Obtenga más información sobre la configuración de intercambio de datos .
Análisis: ¿Cómo actualizo la configuración de mi propiedad de análisis?
Desde la página de administración en su propiedad de Google Analytics, puede actualizar la configuración de su propiedad, como:
Configuración de intercambio de datos
Configuración de retención de datos
Configuración de zona horaria y moneda
Para actualizar la configuración de su propiedad, siga estos pasos:
Análisis: ¿Por qué no veo ningún datos de análisis en la consola Firebase después de no beber Firebase de Google Analytics?
Los datos de análisis residen dentro de la propiedad de Google Analytics, no dentro del proyecto Firebase. Si elimina o desactiva la propiedad, los datos de análisis no serán accesibles para Firebase y verá un tablero de análisis vacío en la consola Firebase. Tenga en cuenta que dado que los datos aún residen en la propiedad previamente vinculada, siempre puede volver a relacionar la propiedad a Firebase y ver los datos de análisis en la consola Firebase.
Vinculación de una nueva cuenta de Google Analytics (y, por lo tanto, una nueva propiedad de Google Analytics) con su proyecto Firebase dará como resultado un tablero de análisis vacío en la consola Firebase. Sin embargo, si aún existe su propiedad previamente vinculada, puede mover los datos existentes de la propiedad anterior a la nueva propiedad.
Análisis: si mi propiedad analítica y sus datos se eliminaron, ¿hay alguna forma de recuperarlos?
No. Si su propiedad ha sido eliminada, no es posible deshacer la propiedad o recuperar los datos de análisis recopilados previamente almacenados en esa propiedad.
Si desea comenzar a usar Google Analytics nuevamente, puede vincular una nueva propiedad o una propiedad existente con su proyecto Firebase. Puede hacer este enlace en la consola Firebase o en la interfaz de usuario de Google Analytics. Obtenga más información sobre cómo vincular una propiedad de Google Analytics con su proyecto Firebase.
Análisis: si se eliminó mi propiedad de análisis, ¿puedo vincular una nueva propiedad de Google Analytics a mi proyecto Firebase y comenzar a usar Analytics nuevamente?
Si desea comenzar a usar Google Analytics nuevamente, puede vincular una nueva propiedad o una propiedad existente con su proyecto Firebase. Puede hacer este enlace en la consola Firebase o en la interfaz de usuario de Google Analytics. Obtenga más información sobre cómo vincular una propiedad de Google Analytics con su proyecto Firebase.
Tenga en cuenta que dado que todos los datos de análisis se almacenan en la propiedad (no en el proyecto Firebase), no se pueden recuperar los datos de análisis previamente recopilados.
Análisis: ¿Cómo se verán afectados los productos Firebase o los productos integrados de Google por la eliminación de mi propiedad analítica?
Varios productos de Firebase confían en la integración de Google Analytics. Si su propiedad de análisis y sus datos se eliminan, lo siguiente sucederá si usa los siguientes productos:
Crashlytics: ya no puede ver usuarios sin choques, registros de pan de pan y/o alertas de velocidad.
Mensajes en la nube y mensajes en la aplicación: ya no puede usar la orientación, las métricas de campaña, la segmentación de la audiencia y las etiquetas de análisis.
Configuración remota: ya no puede usar configuraciones o personalización específicas.
Pruebas A/B: ya no puede usar pruebas A/B ya que Google Analytics suministra la medición del experimento.
Enlaces dinámicos: cualquier característica que se basa en datos de Google Analytics se verá interrumpida.
Además, las siguientes integraciones se verán afectadas:
Análisis: ¿Cómo segmento a los usuarios que no han cumplido con algún criterio?
Puede replantear el problema "apuntando negativamente" a estos usuarios. Por ejemplo, replantee el problema como "No muestres anuncios a las personas que han comprado algo" y forman una audiencia de esos usuarios para apuntar.
Análisis: ¿El público y/o eventos definidos en la interfaz de Google Analytics también están disponibles en la consola Firebase?
Su público y propiedades de los usuarios se sincronizarán. Para algunas características, necesitará usar la interfaz de Google Analytics, como la segmentación y los embudos cerrados. Puede acceder a la interfaz de Google Analytics directamente a través de enlaces profundos desde la consola Firebase.
Cualquier cambio que realice de la consola Firebase también se puede realizar en Google Analytics, y esos cambios se reflejarán en Firebase.
Autenticación
Autenticación de Firebase: ¿Qué países son compatibles con la autenticación del teléfono?
La autenticación de Firebase admite la verificación del número de teléfono en todo el mundo, pero no todas las redes entregan de manera confiable nuestros mensajes de verificación. Los siguientes países tienen buenas tasas de entrega, y se espera que funcionen bien para el número de teléfono.
País
Código
ANUNCIO
Andorra
AE
Emiratos Árabes Unidos
AF
Afganistán
AG
Antigua y Barbuda
Alabama
Albania
SOY
Armenia
ao
Angola
Arkansas
Argentina
COMO
Samoa Americana
EN
Austria
AU
Australia
AW
Aruba
Arizona
Azerbaiyán
licenciado en Letras
Bosnia y Herzegovina
CAMA Y DESAYUNO
Barbados
BD
Bangladesh
SER
Bélgica
novio
Burkina Faso
bg
Bulgaria
bj
Benín
BM
islas Bermudas
BN
Brunei Darussalam
B.O.
bolivia
BR
Brasil
Licenciatura
bahamas
BT
Bután
peso corporal
Botsuana
POR
Bielorrusia
Bz
Belice
California
Canadá
CD
Congo, (Kinshasa)
FQ
República Centroafricana
CG
Congo (Brazzaville)
CH
Suiza
CI
Costa de Marfil
CK
Islas Cook
CL
Chile
CM
Camerún
CO
Colombia
CR
Costa Rica
CV
Cabo Verde
CW
Curazao
Cy
Chipre
CZ
República Checa
Delaware
Alemania
DJ
Yibuti
NS
Dinamarca
DM
Dominica
HACER
República Dominicana
DZ
Argelia
CE
Ecuador
P.EJ
Egipto
ES
España
hora del este
Etiopía
FI
Finlandia
FJ
Fiyi
FK
Islas Malvinas (Malvinas)
FM
Micronesia, Estados Federados de
FO
Islas Faroe
FR
Francia
Georgia
Gabón
ES
Reino Unido
Gd
Granada
GE
Georgia
novia
Guayana Francesa
GG
Guernesey
GHE
Ghana
soldado americano
Gibraltar
GL
Groenlandia
GM
Gambia
médico de cabecera
Guadalupe
GQ
Guinea Ecuatorial
GRAMO
Grecia
GT
Guatemala
GY
Guayana
Hong Kong
Hong Kong, RAE de China
hn
Honduras
HORA
Croacia
HT
Haití
HU
Hungría
IDENTIFICACIÓN
Indonesia
ES DECIR
Irlanda
ILLINOIS
Israel
SOY
Isla del hombre
EN
India
coeficiente intelectual
Irak
ÉL
Italia
JE
Jersey
J.M.
Jamaica
jo
Jordán
J.P.
Japón
KE
Kenia
KG
Kirguistán
kh
Camboya
km
Comoras
kn
San Cristóbal y Nieves
KR
Corea del Sur)
kilovatios
Kuwait
Kentucky
Islas Caimán
KZ
Kazajstán
LA
República Democrática Popular Lao
libra
Líbano
LC
Santa Lucía
LI
Liechtenstein
LK
Sri Lanka
LS
Lesoto
LT
Lituania
LU
Luxemburgo
LV
Letonia
LY
Libia
MAMÁ
Marruecos
Maryland
Moldavia
A MÍ
Montenegro
MF
Saint-Martin (parte francesa)
mg
Madagascar
mk
Macedonia, República de
MM
Birmania
Minnesota
Mongolia
mes
Macao, SAR China
EM
Montserrat
MONTE
Malta
MU
Mauricio
megavatio
Malaui
MX
México
MI
Malasia
MZ
Mozambique
N / A
Namibia
CAROLINA DEL NORTE
Nueva Caledonia
nordeste
Níger
NF
Isla Norfolk
NG
Nigeria
NI
Nicaragua
Países Bajos
Países Bajos
NO
Noruega
notario público
Nepal
Nueva Zelanda
Nueva Zelanda
om
Omán
Pensilvania
Panamá
EDUCACIÓN FÍSICA
Perú
PG
Papúa Nueva Guinea
PH
Filipinas
PAQUETE
Pakistán
PL
Polonia
PM
San Pedro y Miquelón
relaciones públicas
Puerto Rico
PD
Territorio Palestino
PT
Portugal
PY
Paraguay
control de calidad
Katar
RE
Reunión
RO
Rumania
RS
Serbia
RU
Federación Rusa
RW
Ruanda
SA
Arabia Saudita
CAROLINA DEL SUR
Seychelles
SE
Suecia
SG
Singapur
SH
santa elena
SI
Eslovenia
SK
Eslovaquia
SL
Sierra Leona
SN
Senegal
SR
Surinam
CALLE
Santo Tomé y Príncipe
SV
El Salvador
talla
Suazilandia
TC
Islas Turcas y Caicos
TG
Ir
TH
Tailandia
TL
Timor Oriental
MT
Turkmenistán
A
Tonga
TR
Pavo
TT
Trinidad y Tobago
Dos
Taiwán, República de China
Tz
Tanzania, República Unida de
UA
Ucrania
UG
Uganda
A NOSOTROS
Estados Unidos de América
UY
Uruguay
UZ
Uzbekistán
VC
San Vicente y las Granadinas
VE
Venezuela (República Bolivariana)
VG
Islas Vírgenes Británicas
VI
Islas Vírgenes, EE.UU.
VN
Vietnam
WS
Samoa
S.M.
Yemen
YouTube
Mayotte
ZA
Sudáfrica
ZM
Zambia
ZW
Zimbabue
Autenticación de Firebase: ¿Cómo puedo prevenir el abuso de SMS al usar la autenticación del teléfono?
Para ayudar a proteger su proyecto del bombeo de tráfico SMS y el abuso de API, tome los siguientes pasos:
Considere establecer una política de región de SMS
Busque regiones con un número muy alto de SMS enviados y un número muy bajo (o cero) de SMS verificado. La relación de verificado/enviado es su tasa de éxito. Las tasas de éxito saludables son comúnmente en el rango del 70-85% ya que SMS no es un protocolo de entrega garantizado, y algunas regiones pueden experimentar abuso. Las tasas de éxito por debajo del 50% implican muchos SMS enviados, pero pocos inicios de sesión exitosos, que es un indicador común de los malos actores y el bombeo de tráfico de SMS.
Use la política de la región de SMS para negar las regiones SMS con bajas tasas de éxito, o solo permita ciertas regiones si su aplicación solo está destinada a distribución en ciertos mercados.
Limite sus dominios de autenticación autorizados
Use el tablero de configuración de autenticación para administrar dominios autorizados. El dominio localhost se agrega de forma predeterminada a los dominios de autenticación aprobados para simplificar el desarrollo. Considere eliminar localhost de los dominios autorizados en su proyecto de producción para evitar que los malos actores ejecuten código en sulocalhost para acceder a su proyecto de producción.
Habilitar y hacer cumplir la comprobación de aplicaciones
Habilite la comprobación de aplicaciones para ayudar a proteger su proyecto del abuso de API al atestificar que las solicitudes solo provienen de las solicitudes asociadas con su proyecto.
Recuerde que necesita hacer cumplir la comprobación de aplicaciones para la autenticación en la consola Firebase (considere monitorear el tráfico antes de hacer cumplir). Además, verifique dos veces su lista de sitios aprobados por Recaptcha Enterprise para validar que solo contiene sus sitios de producción, y que la lista de aplicaciones registradas en su proyecto en la verificación de la aplicación es precisa.
Tenga en cuenta que la verificación de la aplicación ayuda a proteger contra ataques automatizados al afirmar que la llamada proviene de una de sus aplicaciones registradas. No impide que los usuarios usen su aplicación de manera involuntaria (por ejemplo, que comience nunca terminen los flujos de inicio de sesión para generar SMS enviados).
Autenticación de Firebase: en mi aplicación Android, ¿por qué recibo el siguiente error: Google sign in failed ?
Siga los pasos de solución de problemas en estas preguntas frecuentes si recibe el siguiente error:
GoogleFragment: Google sign in failed
com.google.android.gms.common.api.ApiException: 13: Unable to get token.
at
com.google.android.gms.internal.auth-api.zbay.getSignInCredentialFromIntent(com.google.android.gms:play-services-auth@@20.3.0:6)
Asegúrese de que Google Sign-In esté habilitado correctamente como un proveedor de autenticación:
Dentro de la pestaña Método de registro , deshabilite y luego vuelva a habilitar el método de inicio de sesión de Google (incluso si ya está habilitado):
Abra el método de inicio de sesión de Google , desactíquelo y luego haga clic en Guardar .
Vuelva a abrir el método de inicio de sesión de Google , habilitarlo y luego haga clic en Guardar .
Compruebe si todavía recibe el error. Si es así, continúe con el siguiente paso de solución de problemas.
Asegúrese de que los clientes OAuth 2.0 subyacentes requeridos estén presentes.
En la página de credenciales de la consola de Google Cloud, busque en la sección OAuth 2.0 Client IDS .
Si los clientes OAuth 2.0 no están presentes (y ha realizado todos los pasos de solución de problemas anteriores), contacte al soporte .
Autenticación de Firebase: en mi aplicación de plataforma Apple, ¿por qué recibo el siguiente error? ¿ You must specify <clientID> in <GIDConfiguration> ?
Siga los pasos de solución de problemas en estas preguntas frecuentes si recibe el siguiente error:
You must specify |clientID| in |GIDConfiguration|
Asegúrese de que Google Sign-In esté habilitado correctamente como un proveedor de autenticación:
Dentro de la pestaña Método de registro , deshabilite y luego vuelva a habilitar el método de inicio de sesión de Google (incluso si ya está habilitado):
Abra el método de inicio de sesión de Google , desactíquelo y luego haga clic en Guardar .
Vuelva a abrir el método de inicio de sesión de Google , habilitarlo y luego haga clic en Guardar .
Dentro de la pestaña Método de registro , deshabilite y luego vuelva a habilitar el método de inicio de sesión de Google (incluso si ya está habilitado):
Abra el método de inicio de sesión de Google , desactíquelo y luego haga clic en Guardar .
Vuelva a abrir el método de inicio de sesión de Google , habilitarlo y luego haga clic en Guardar .
Además, en la configuración del proveedor de inicio de sesión de Google de la sección de autenticación , asegúrese de que la identificación del cliente OAuth y el secreto coincidan con el cliente web que se muestra en la página de credenciales de la consola de Google Cloud (busque la sección de IDS del cliente OAuth 2.0 ).
Autenticación de Firebase: ¿Cómo construyo manualmente un cliente web de OAuth?
Abra la página de credenciales de la consola de Google Cloud.
En la parte superior de la página, seleccione Crear credenciales> OAUTH ID de cliente .
Si se le solicita que configure su pantalla de consentimiento, siga las instrucciones en pantalla y luego continúe con los siguientes pasos de estas preguntas frecuentes.
Crea el cliente web OAuth:
Para el tipo de aplicación , seleccione la aplicación web .
Para los orígenes autorizados de JavaScript , agregue lo siguiente:
http://localhost
http://localhost:5000
https:// PROJECT_ID .firebaseapp.com
https:// PROJECT_ID .web.app
Para el URI de redirección autorizado , agregue lo siguiente:
Dentro de la pestaña Método de registro , abra el proveedor de inicio de sesión de Google y luego pegue la ID de cliente del cliente del servidor web y secreta que acaba de construir y copiar desde la consola de Google Cloud. Clic en Guardar .
Autenticación de Firebase: ¿Cómo se determina %APP_NAME% para la plantilla de correo electrónico para el correo electrónico de confirmación que se puede enviar a un usuario cuando se registra utilizando una dirección de correo electrónico y contraseña?
Antes de diciembre de 2022, el %APP_NAME% en la plantilla de correo electrónico estaba poblada con la marca OAuth que se aprovisionaba automáticamente cada vez que se registró una aplicación de Android en el proyecto Firebase. Ahora, dado que la marca OAuth se aprovisiona solo cuando Google Sign-In está habilitado, lo siguiente describe cómo se determina %APP_NAME% :
Si la marca OAuth está disponible, entonces el %APP_NAME% en la plantilla de correo electrónico será la marca OAuth (igual que el comportamiento de 2022 de diciembre de diciembre).
Si la marca OAuth no está disponible, así es como se determina el %APP_NAME% en la plantilla de correo electrónico:
Si el nombre del paquete Android o la identificación de paquete iOS están presentes en la solicitud, entonces el %APP_NAME% será el nombre de la aplicación utilizado en Play Store o App Store (respectivamente).
Tenga en cuenta que si la búsqueda del nombre de alojamiento de alojamiento de Firebase predeterminada falla, entonces el retroceso final es usar la ID del proyecto Firebase como %APP_NAME% .
Funciones en la nube
Soporte de tiempo de ejecución de funciones en la nube
¿Cómo actualizo a la última versión compatible de Node.js?
¿Cómo puedo asegurarme de que implementé mis funciones en un tiempo de ejecución de Node.js específico?
En la consola Firebase, vaya al tablero de funciones , seleccione una función y verifique el idioma de la función bajo detalles adicionales .
Utilizo extensiones de Firebase. ¿Me veré afectado por las actualizaciones de tiempo de ejecución de las funciones de la nube?
Sí. Dado que las extensiones usan funciones en la nube , el tiempo de ejecución de sus extensiones deberá actualizarse en la misma línea de tiempo que las funciones en la nube.
Le recomendamos que actualice periódicamente la última versión de cada extensión instalada en su proyecto. Puede actualizar las extensiones de sus proyectos a través de la consola Firebase o Firebase CLI .
Mensajería en la nube
Mensaje en la nube: ¿Cuál es la diferencia entre el compositor de notificaciones y la mensajería en la nube?
Firebase Cloud Messaging proporciona un conjunto completo de capacidades de mensajería a través de sus SDK de clientes y los protocolos de servidor HTTP y XMPP. Para implementaciones con requisitos de mensajería más complejos, FCM es la opción correcta.
El compositor de notificaciones es una solución de mensajería ligera y sin servidor construida en mensajes en la nube de Firebase. Con una consola gráfica fácil de usar y requisitos de codificación reducidos, el compositor de notificaciones permite a los usuarios enviar fácilmente mensajes a reenginar y retener a los usuarios, fomentar el crecimiento de las aplicaciones y apoyar las campañas de marketing.
Capacidades
Compositor de notificaciones
Mensajería en la nube
Objetivo
Dispositivo único
Clientes suscritos a temas (es decir, clima)
Clientes en segmento de usuario predefinido (aplicación, versión, idioma)
Mensaje en la nube: Apple anunció que están desaprobando el protocolo binario heredado para APN. ¿Necesito hacer algo?
No. Firebase Cloud Messaging cambió al protocolo APNS basado en HTTP/2 en 2017. Si está utilizando FCM para enviar notificaciones a los dispositivos iOS, no debería haber ninguna acción en su parte.
Mensaje en la nube: ¿Necesito usar otros servicios de Firebase para usar FCM?
Puede usar mensajes de nube Firebase como un componente independiente, de la misma manera que lo hizo con GCM, sin usar otros servicios de Firebase.
Mensaje en la nube: soy un desarrollador existente de Google Cloud Messaging (GCM). ¿Debería mudarme a Firebase Cloud Messaging?
FCM es la nueva versión de GCM bajo la marca Firebase. Hereda la infraestructura central de GCM, con nuevos SDK para facilitar el desarrollo de mensajes de nubes.
Los beneficios de la actualización a FCM SDK incluyen:
Desarrollo del cliente más simple. Ya no tiene que escribir su propio registro o lógica de reintento de suscripción.
Una solución de notificación de casa lista para usar. Puede usar el compositor de notificaciones, una solución de notificaciones sin servidor con una consola web que permite a cualquiera enviar notificaciones para dirigir al público específico en función de las ideas de Google Analytics.
Para actualizar de SDK de GCM a SDK de FCM, consulte las Guías para migrar aplicaciones Android e iOS .
Mensaje en la nube: ¿Por qué mis dispositivos específicos aparentemente no reciben mensajes?
Cuando parece que los dispositivos no han recibido mensajes con éxito, verifique primero estas dos causas potenciales:
Manejo de mensajes de primer plano para mensajes de notificación . Las aplicaciones del cliente deben agregar lógica de manejo de mensajes para manejar mensajes de notificación cuando la aplicación está en primer plano en el dispositivo. Vea los detalles de iOS y Android .
Restricciones de firewall de red . Si su organización tiene un firewall que restringe el tráfico hacia o desde Internet, debe configurarlo para permitir la conectividad con FCM para que sus aplicaciones de cliente de mensajería en la nube Firebase reciban mensajes. Los puertos para abrir son:
5228
5229
5230
FCM generalmente usa 5228, pero a veces usa 5229 y 5230. FCM no proporciona IP específicas, por lo que debe permitir que su firewall acepte conexiones salientes a todas las direcciones IP contenidas en los bloques IP enumerados en el ASN de Google de 15169 .
Mensaje en la nube: he implementado onMessageReceived en mi aplicación Android, pero no se llama.
Cuando su aplicación está en segundo plano, los mensajes de notificación se muestran en la bandeja del sistema, y no se llama a onMessageReceived . Para los mensajes de notificación con una carga útil de datos, el mensaje de notificación se muestra en la bandeja del sistema, y los datos que se incluyeron con el mensaje de notificación se pueden recuperar de la intención lanzada cuando el usuario aprovecha la notificación.
Notifications composer: What's the difference between the Notifications composer and Cloud Messaging?
The Notifications composer is a lightweight, serverless messaging solution built on Firebase Cloud Messaging. With a user-friendly graphical console and reduced coding requirements, the Notifications composer lets users easily send messages to reengage and retain users, foster app growth, and support marketing campaigns.
Firebase Cloud Messaging provides a complete set of messaging capabilities through its client SDKs and HTTP and XMPP server protocols. For deployments with more complex messaging requirements, FCM is the right choice.
Here's a comparison of the messaging capabilities provided by Firebase Cloud Messaging and the Notifications composer:
Capacidades
Notifications composer
Cloud Messaging
Objetivo
Single device
Clients subscribed to topics (ie weather)
Clients in predefined user segment (app, version, language)
Clients in specified analytics audiences
Clients in device groups
Upstream from client to server
Tipo de mensaje
Notifications up to 2kb
Data messages up to 4kb
Entrega
Inmediato
Future client device local time
Analítica
Built-in Notifications analytics collection and funnel analytics
Notifications composer: I am an existing Google Cloud Messaging (GCM) developer, and I want to use the Notifications composer. ¿Qué tengo que hacer?
The Notifications composer is an out-of-the-box solution that lets anyone send notifications to target specific audiences based on insights from Google Analytics. Also, the Notifications composer provides funnel analysis for every message, allowing easy evaluation of notification effectiveness.
If you are an existing GCM developer, to use the Notifications composer you have to upgrade from GCM SDKs to FCM SDKs. See the guides for migrating Android and iOS apps.
FCM features deprecated in June 2023
Which FCM APIs were deprecated on June 20, 2023, and what should I do if I am using those APIs?
The following APIs/SDKs will be affected by the deprecation:
Server APIs
API Name
API Endpoint
Impact on users
Acción requerida
Legacy HTTP protocol
https://fcm.googleapis.com/fcm/send
Requests to the endpoint will start failing after 6/21/2024.
API calls to FirebaseMessaging.send in the app won't trigger upstream messages to the app server after 6/21/2024.
Implement this functionality in your server logic. For example, some developers implement their own HTTP/gRPC endpoint and call the endpoint directly to send messages from their clients to the app server. See this gRPC Quick start for an example implementation of upstream messaging using gRPC.
Batch Send API
https://fcm.googleapis.com/batch
Requests to the endpoint will start failing after 6/21/2024.
These APIs will stop working after 6/21/2024 because they call the batch send API .
Upgrade to the latest Firebase Admin SDK and use the new APIs instead: sendEach()/ sendEachAsync()/send_each()/sendEachForMulticast()/sendEachForMulticastAsync()/ send_each_for_multicast() .
Note that the new APIs no longer call the deprecated batch send API, and for this reason they may create more concurrent HTTP connections than the old APIs.
SDK de cliente
SDK versions
Impact on users
Acción requerida
GCM SDKs (deprecated in 2018)
Apps using GCM SDKs will not be able to register tokens nor receive messages from FCM after 6/21/2024.
Upgrade your Android SDK to the latest Firebase SDK if you haven't already done so.
JS SDKs version <7.0.0 (breaking change at version 7.0.0 in 2019)
Web apps using older JS SDKs will not be able to register tokens after 6/21/2024.
Upgrade your Firebase Web SDK to the latest version.
Will I see a service downgrade before June 2024?
No. You have 12 months (06/20/2023 - 06/21/2024) to migrate from the old APIs to new APIs without any service downgrade. We strongly recommend you to plan the migration as early as possible so you won't be impacted by the decommissioning of the APIs in June 2024.
After June 2024, you may see increased errors or lack of functionality when using the APIs/SDKs listed above.
What's the difference between OAuth 2.0 tokens and server keys?
An OAuth 2.0 token is a short-lived token derived from a service account . It's Google's standard auth model and it's more secure than static server keys.
Note that the request headers differ when you use OAuth 2.0 tokens for requests to different endpoints.
HTTP v1 API : Authorization: Bearer $oauth_token
Instance ID server API and Device group management API : Authorization: Bearer $oauth_token access_token_auth: true
Can I migrate my requests to the new API all at once?
We recommend that you slowly ramp up your traffic to the new API. If you expect to send more than 600,000 messages/min on a regular basis, contact Firebase support for instructions on how to increase quota or get recommendations on how to spread out traffic.
What's the difference between the HTTP v1 API and the legacy APIs when I send messages to topics/device groups?
Topics: you don't need to add the "/topics/" prefix to your topic target when you use the v1 API.
Device groups: You can use a group token as a token target in the HTTP v1 API. However, the HTTP v1 API doesn't return the success/failure counts in the response. We recommend that you use FCM topics or manage your device groups by yourself.
Does the HTTP v1 API support sending messages to multiple tokens in one request?
No. This feature, called "multicast" in legacy HTTP APIs, is not supported by the HTTP v1 API, which is better designed for scalability.
For use cases where end-to-end latency is critical, or where total fanout size is small (fewer than 1 million), Google recommends sending multiple separate requests using the HTTP v1 API. The HTTP v1 API over HTTP/2 performs similarly for 99.9% of multicast requests (sending < 100 tokens). For outlier use cases (sending 1000 tokens), it achieves up to a third of the throughput rate, so additional concurrency is needed to optimize for this atypical use case. Users can experience more reliability and availability with the HTTP v1 API than with legacy multicast.
For use cases where throughput and egress bandwidth are prioritized or where total fanout size is large (greater than 1 million), Google recommends topic messaging. While topic messaging requires a one-time action to subscribe recipients to a topic, it offers up to a 10,000 QPS per project fanout rate without a maximum limit on topic size.
What versions of the Firebase Admin SDK have the new APIs?
Plataforma
Firebase Admin SDK version
Nodo.js
>=11.7.0
Pitón
>=6.2.0
Java
>=9.2.0
Ir
>=4.12.0
.NETO
>=2.4.0
What's the difference between the batch send API and the HTTP v1 API?
The FCM batch send API uses the same message format and authentication mechanism as the HTTP v1 API. However, it uses a different endpoint. If you want to improve efficiency, you should consider using HTTP/2 to send multiple requests over the same HTTP connection to the HTTP v1 API.
What should I do if I can't access my project?
Please reach out to the Google Cloud support team for help.
Cloud Storage for Firebase
Cloud Storage for Firebase: Why can't I use Cloud Storage for Firebase?
Cloud Storage for Firebase creates a default bucket in the App Engine no-cost tier. This allows you to quickly get up and running with Firebase and Cloud Storage for Firebase, without having to put in a credit card or enable a Cloud Billing account. It also allows you to easily share data between Firebase and a Google Cloud project.
There are, however, two known cases where this bucket cannot be created and you will be unable to use Cloud Storage for Firebase:
A project imported from Google Cloud which had a App Engine Master/Slave Datastore application.
A project imported from Google Cloud which has domain prefixed projects. For example: domain.com:project-1234 .
There are currently no workarounds to these issues, and we recommend that you create a new project in the Firebase console and enable Cloud Storage for Firebase in that project.
Cloud Storage for Firebase: Why do I get error code 412 responses about service account permissions and failed service account operations when using the Cloud Storage for Firebase API?
It's likely you're getting 412 error codes either because the Cloud Storage for Firebase API is not enabled for your project or a necessary service account is missing the required permissions.
Cloud Storage for Firebase: On Spark plan projects, can I store executable files?
For no-cost (Spark) plan projects, Firebase blocks uploads and hosting of certain executable file types for Windows, Android and Apple by Cloud Storage for Firebase and Firebase Hosting. This policy exists to prevent abuse on our platform.
Serving, hosting and file uploads of disallowed files are blocked for all Spark projects created on or after Sept 28th, 2023. For existing Spark projects with files uploaded before that date, such files can still be uploaded and hosted.
This restriction applies to Spark plan projects. Projects on the pay as you go (Blaze) plan are not affected.
The following file types cannot be hosted on Firebase Hosting and Cloud Storage for Firebase:
Windows files with .exe , .dll and .bat extensions
Android files with .apk extension
Apple platform files with .ipa extension
¿Que necesito hacer?
If you still want to host these file types after September 28th, 2023:
For Hosting: upgrade to the Blaze plan before you can deploy these file types to Firebase Hosting via the firebase deploy command.
For Storage: upgrade to the Blaze plan to upload these file types to the bucket of your choice using the GCS CLI, the Firebase console, or Google Cloud Console.
Use Firebase tools to manage your Firebase Hosting and Cloud Storage resources.
For managing resources in Firebase Hosting, use the Firebase console to delete releases according to this guide .
For managing resources in Cloud Storage, navigate to the Storage product page in your project.
On the Files tab, locate disallowed files to delete in your folder hierarchy, then select them using the checkbox next to the filename(s) on the left-hand side of the panel.
Click Delete , and confirm the files were deleted.
Cloud Storage for Firebase: Why do I see an unexpected increase in upload and download operations?
Previously, download and upload requests to the Cloud Storage for Firebase API were not being counted properly. We have taken steps to fix this issue, starting from September 15, 2023.
For Blaze users, upload and download operations will start counting towards your monthly bill. For Spark users, they will start counting towards your monthly free limit.
We recommend monitoring your Usage page for any increases that may count towards your limits.
Cloud Storage for Firebase: Why do I see new service account IDs associated with my Firebase projects that use Cloud Storage for Firebase?
Firebase uses service accounts to operate and manage services without sharing user credentials. When you create a Firebase project, you might notice that a number of service accounts are already available in your project.
The service account that Cloud Storage for Firebase uses is scoped to your project and is named service- PROJECT_NUMBER @gcp-sa-firebasestorage.iam.gserviceaccount.com .
If you used Cloud Storage for Firebase before September 19, 2022, you may see an additional service account on previously-linked Cloud Storage buckets named firebase-storage@system.gserviceaccount.com . As of September 19, 2022, this service account is no longer supported.
You can view all service accounts associated with your project in the Firebase console, on the Service accounts tab .
Adding the new service account
If you removed the service account previously or the service account is not present in your project, you may do one of the following to add the account.
(Recommended) Automated: Use the AddFirebase REST endpoint to re-import your bucket into Firebase. You will only need to call this endpoint once, not once for each linked bucket.
We strongly discourage you from removing the service account because this may block access to your Cloud Storage buckets from your apps. To remove the service account from your project, follow the instructions in Disabling a service account .
Dynamic Links: Why does my Android app access each Dynamic Link twice?
The getInvitation API clears the saved Dynamic Link to prevent it from being accessed twice. Be sure to call this API with the autoLaunchDeepLink parameter set to false in each of the deep link activities to clear it for the case when the activity is triggered outside the main activity.
Firebase Local Emulator Suite
Why do Emulator Suite logs show an error starting with "Multiple projectIds are not recommended in single project mode"?
This message means the Emulator Suite has detected it may be running a particular product emulator using different project IDs. This may indicate a misconfiguration, and can cause issues when emulators try to communicate with one another, and when you try to interact with emulators from your code. If project IDs don't match, it often appears that data is missing, since data stored in emulators is keyed to projectID, and interoperability depends on matching project IDs.
This has been a common source of confusion among developers, so by default the Local Emulator Suite will now only allow running with a single project ID, unless you specify otherwise in the firebase.json configuration file. If an emulator detects more than one project ID, it will log a warning and potentially throw a fatal error.
Check your project ID declaration(s) for mismatches in:
The default project set at the command line. By default, the project ID will be taken on startup from the project selected with firebase init or firebase use . To view the list of projects (and see which one is selected) use firebase projects:list .
Unit tests. The project ID is often specified in calls to the Rules Unit Testing library methods initializeTestEnvironment or initializeTestApp . Other testing code may initialize with initializeApp(config) .
The command line --project flag. Passing the Firebase CLI --project flag overrides the default project. You'll need to ensure the value of the flag matches the project ID in unit tests and app initialization.
Platform-specific places to check:
Web
The projectId property in your JavaScript firebaseConfig object, used in initializeApp .
Androide
The project_id property inside the google-services.json configuration file.
plataformas de manzana
The PROJECT_ID property in the GoogleService-Info.plist configuration file.
To disable single project mode, update firebase.json with the singleProjectMode key:
Hosting: On Spark plan projects, can I store executable files?
For no-cost (Spark) plan projects, Firebase blocks uploads and hosting of certain executable file types for Windows, Android and Apple by Cloud Storage for Firebase and Firebase Hosting. This policy exists to prevent abuse on our platform.
Serving, hosting and file uploads of disallowed files are blocked for all Spark projects created on or after Sept 28th, 2023. For existing Spark projects with files uploaded before that date, such files can still be uploaded and hosted.
This restriction applies to Spark plan projects. Projects on the pay as you go (Blaze) plan are not affected.
The following file types cannot be hosted on Firebase Hosting and Cloud Storage for Firebase:
Windows files with .exe , .dll and .bat extensions
Android files with .apk extension
Apple platform files with .ipa extension
¿Que necesito hacer?
If you still want to host these file types after September 28th, 2023:
For Hosting: upgrade to the Blaze plan before you can deploy these file types to Firebase Hosting via the firebase deploy command.
For Storage: upgrade to the Blaze plan to upload these file types to the bucket of your choice using the GCS CLI, the Firebase console, or Google Cloud Console.
Use Firebase tools to manage your Firebase Hosting and Cloud Storage resources.
For managing resources in Firebase Hosting, use the Firebase console to delete releases according to this guide .
For managing resources in Cloud Storage, navigate to the Storage product page in your project.
On the Files tab, locate disallowed files to delete in your folder hierarchy, then select them using the checkbox next to the filename(s) on the left-hand side of the panel.
Click Delete , and confirm the files were deleted.
Hosting: Why does my Hosting release history table in the Firebase console show file counts that are more than what my local project actually has?
Firebase automatically adds extra files containing metadata about the Hosting site, and these files are included in the total file count for the release.
Hosting: What's the largest file size that I can deploy to Firebase Hosting?
Hosting has a maximum size limit of 2 GB for individual files.
We recommend storing larger files using Cloud Storage , which offers a maximum size limit in the terabyte range for individual objects.
Hosting: How many Hosting sites can I have per Firebase project?
Performance Monitoring: How many custom URL patterns can I create?
You can create up to 400 total custom URL patterns per app and up to 100 custom URL patterns per domain for that app.
Performance Monitoring: Why am I not seeing real time display of performance data?
To view real time performance data, make sure that your app uses a Performance Monitoring SDK version that's compatible with real time data processing.
iOS — v7.3.0 or later
tvOS — v8.9.0 or later
Android — v19.0.10 or later (or Firebase Android BoM v26.1.0 or later)
Web — v7.14.0 or later
Note that we always recommend using the latest version of SDK, but any version listed above will enable Performance Monitoring to process your data in near real time.
Realtime Database
Realtime Database: Why was my Realtime Database reported bandwidth lower than average between September 2016 and March 2017?
For our bandwidth calculations, we normally include SSL encryption overhead (based on layer 5 of the OSI model). However, in September 2016, we introduced a bug that caused our bandwidth reporting to ignore encryption overhead. This might have resulted in artificially low reported bandwidth and bills on your account for a few months.
We released a fix for the bug in late March 2017, returning bandwidth reporting and billing to their normal levels.
Realtime Database: What are the scaling limitations of the Realtime Database?
Each Realtime Database instance has limits on the number of write operations per second. For small writes, this limit is approximately 1000 write operations per second. If you are approaching this limit, batching operations using multi-path updates can help you achieve higher throughput.
Realtime Database: What can I do if I'm over my Realtime Database usage limits?
If you've received an email alert or notification in the Firebase console that you've exceeded your Realtime Database usage limits, you can address it based on the usage limit you've exceeded. To see your Realtime Database usage, go to the Realtime Database Usage dashboard in the Firebase console.
If you're over your download limit, you can upgrade your Firebase pricing plan or wait until your download limit resets at the start of your next billing cycle. To decrease your downloads, try the following steps:
Add queries to limit the data that your listen operations return.
Check for unindexed queries.
Use listeners that only download updates to data — for example, on() instead of once() .
Use security rules to block unauthorized downloads.
If you're over your storage limit, upgrade your pricing plan to avoid service disruptions. To reduce the amount of data in your database, try the following steps:
Run periodic cleanup jobs.
Reduce any duplicate data in your database.
Note that it may take some time to see any data deletions reflected in your storage allotment.
If you're over your simultaneous database connections limit, upgrade your plan to avoid any service disruptions. To manage simultaneous connections to your database, try connecting via users via the REST API if they don't require a realtime connection.
Remote Config
Remote Config: Why don't fetched values change the behavior and appearance of my app?
Unless you fetch values with fetchAndActivate() , values are stored locally but not activated. To activate fetched values so that they can take effect, call activate . This design lets you control when the behavior and appearance of your app changes, because you can choose when to call activate . After you call activate , your app source code determines when updated parameter values are used.
For example, you could fetch values and then activate them the next time a user starts your app, which removes the need to delay app startup while your app waits for fetched values from the service. Changes to your app's behavior and appearance then occur when your app uses the updated parameter values.
Remote Config: I am making a lot of fetch requests while developing my app. Why doesn't my app always get the latest values from the service when it sends fetch requests?
During app development, you might want to fetch and activate configs very frequently (many times per hour) to let you rapidly iterate as you develop and test your app. To accommodate rapid iteration on a project with up to 10 developers, you can temporarily set a FirebaseRemoteConfigSettings object with a low minimum fetch interval ( setMinimumFetchIntervalInSeconds ) in your app.
Remote Config: How quickly does the Remote Config service return fetched values after my app sends a fetch request?
Devices usually receive fetched values in less than a second, and often receive fetched values in milliseconds. The Remote Config service handles fetch requests within milliseconds, but the time required to complete a fetch request will depend on the network speed of the device and the latency of the network connection used by the device.
If your goal is to make fetched values take effect in your app as soon as possible, but without creating a jarring user experience, consider adding calls to fetchAndActivate each time that your app does a full screen refresh.
Firebase User Segmentation Storage stores Firebase installation IDs and related attributes and segments as well as audience lists you've created to provide targeting information to other Firebase services that use them, such as Crashlytics, FCM, Remote Config personalization, and more.