Firebase es una plataforma de desarrollo móvil que fue adquirida por Google en 2014. Ofrece una gran cantidad de herramientas y servicios para el desarrollo de aplicaciones móviles y web, lo que la convierte en una herramienta muy útil para los desarrolladores y las empresas.
Cuando nació Firebase, lo hizo como un SDK de chat, llamado Envolve, para aplicaciones móviles. Al tiempo, los fundadores se dieron cuenta que algunos desarrolladores no estaban usando el SDK para enviar mensajes. Pasaban información a las aplicaciones a través del SDK. A partir de ahí, se creó Firebase Realtime Database, un producto separado de Envolve.
En mayo de 2012, Firebase consiguió recaudar 1.1 millones de dólares, para hacer crecer el producto.
En junio de 2013, Firebase cerró una nueva ronda de financiación, alcanzando los 5.6 millones de dólares.
En 2014, se lanzaron los productos Firebase Hosting y Firebase Authentication y a finales de ese año, Google compró la empresa.
Fue a partir de 2016 cuando se convirtió en una plataforma unificada de productos para desarrolladores móviles. A partir de ahí, incluyó:
Además, Google Cloud Messaging pasó a ser Firebase Cloud Messaging, que no solo permitía mandar notificaciones push a Android, también lo hacía a iOS y Web.
A principios de 2017, Google compró Fabric y Crashlytics (empresas pertenecientes a Twitter) y las incluyó dentro de la suite de Firebase.
Y en el último trimestre de 2017, Firebase sustituyó Firebase Realtime Database por Cloud Firestore, como producto de base de datos en tiempo real.
Firebase Console es la interfaz web que se utiliza para gestionar los servicios de Firebase, como la autenticación, la base de datos en tiempo real, el almacenamiento en la nube, entre otros. La consola es muy fácil de usar y es esencial para configurar y gestionar los servicios de Firebase en una aplicación.
Firebase ofrece una gran cantidad de ventajas y beneficios para el desarrollo de aplicaciones móviles y web. Algunas de las más importantes son:
Es el producto de Firebase para el análisis del uso de las aplicaciones y el engagement por parte de los usuarios.
Esta solución es gratuita y sustituye al producto de Google Analytics for Mobile.
Firebase Predictions aplica técnicas de aprendizaje automático a Analytics para crear segmentos de usuarios, basándose en su comportamiento dentro de nuestra app.
Sobre estos segmentos de usuarios podemos realizar una serie de acciones, como enviar notificaciones push, In-App Messaging, cambiar su configuración mediante Remote Config o aplicar A/B Testing.
Firebase A/B Testing aplica las técnicas de testeo A/B a nuestra aplicación. Podemos realizar una serie de experimentos sobre grupos de control y aplicar aquellos que mejor tasa de conversión presenten.
A/B Testing se integra con Cloud Messaging, para enviar mensajes de marketing y Remote Config, para hacer cambios en la app de manera dinámica.
Firebase Remote Config es un servicio que nos permite cambiar el comportamiento de nuestra aplicación sin necesidad de que los usuarios descarguen una nueva versión.
Nuestra aplicación controla cuando se ha actualizado algún parámetro y lo aplica sin que suponga un alto coste para el rendimiento de la app.
A través de Dynamic Links, mejoramos la experiencia de los usuarios, ya que el comportamiento cambia dependiendo del Sistema Operativo en el que se abre el enlace.
App Indexing permite que nuestra app aparezca directamente en los resultados de Google Search. Si el contenido que está buscando el usuario está en nuestra app y tiene la app instalada, al hacer click en Google se redireccionará a nuestra app.
Si no tiene instalada la app, se mostrará una card que enlace con la descarga de la app.
Si un usuario abre el enlace en iOS o Android, puede acceder directamente a contenido de la app. Si lo abre desde su PC, recibirá el mismo contenido pero en formato web.
Es la solución de Firebase para el envío de notificaciones push. Desde 2016, se puede usar sin ningún coste.
Productos como Urban Airship han tenido que rediseñarse, debido a la potencia de FCM. A partir de que FCM pasase a no tener coste, han pivotado a realizar otro tipo de servicios, complementarios al envío de notificaciones.
In-App Messaging nos ayuda a mejorar el uso de nuestra aplicación por parte de los usuarios activos. Lo hace a través de envíos de mensajes contextuales, facilitándoles el acceso a funcionalidad de nuestra app.
Por ejemplo, si un usuario ha empezado el proceso de compra pero lo abandona, podemos recordarle en algún momento que sigue pendiente u ofrecerle un descuento.
Se trata del servicio en la nube de base de datos en tiempo real de Firebase. Los datos se almacenan en JSON y se sincronizan en tiempo real con cada cliente que esté conectado.
Además, el SDK permite que cualquier cliente, sea iOS, Android o Javascript, compartan la misma instancia de la base de datos y que reciban automáticamente cualquier actualización.
Cloud Storage de Firebase es un servicio de almacenamiento de ficheros, que se tratan como objetos.
Tendremos un SDK para poder realizar las subidas y las descargas, sin importar la calidad de la red.
El contenido a almacenar puede ser audio, vídeo, imágenes o cualquier tipo de fichero que generen los usuarios.
Hosting es un host web para desarrolladores.
Una de las principales ventajas es que nos ofrece una interfaz de comandos y con un sencillo comando podemos desplegar apps web y servir ese contenido a un CDN.
ML Kit es un SDK para móvil que nos proporciona el poder del aprendizaje automático, con la gran experiencia de Google, en un paquete listo para usar en iOS y en Android.
Viene con paquetes predefinidos con funciones habituales para los desarrolladores con poca experiencia en el campo del AA y también nos permite personalizarlo al máximo, usando TensorFlow.
Crashlytics es un servicio de informe de errores. Se trata además de un servicio ligero, en tiempo real y que está conectado con el resto de productos de Firebase
No solo avisa de los errores, también los agrupa, nos indica las circunstancias y en ocasiones nos muestra posibles soluciones al error.
Performance Monitoring es un servicio que nos ayuda a conocer en profundidad la capacidad de mejora que tiene nuestra app.
Para ello, el SDK recoge información de rendimiento de nuestra app y nos la muestra en la consola de Firebase.
De esta forma, podremos conocer cuáles son los puntos en los que nuestra app puede mejorar y así poder arreglar aquellos problemas de rendimiento críticos.
El servicio de Test Lab nos va a permitir ejecutar nuestra app en dispositivos que Google tiene en sus granjas de servidores.
Así podremos realizar cientos de pruebas sin tener que adquirir todos los dispositivos.
Recibiremos capturas y vídeos de las ejecuciones en los diferentes móviles.
Cuando hablamos de Admob nos referimos al servicio de anuncios por excelencia en el mercado móvil.
Google cuenta con el mayor proveedor de anuncios. Es el más integrado en la comunidad y el que más ayuda a los desarrolladores a monetizar.
Es el sistema de autenticación de Firebase, que además permite que se realice en la parte de cliente.
Soporta la autenticación con plataformas como Facebook, GitHub, Twitter y Google.
Además, permite que el usuario cree una cuenta con usuario y contraseña y se almacene en Firebase.
Es uno de los productos estrella de Google, ya que tiene una trayectoria muy amplía, heredada de Google Analytics.
Existen 3 tipos de permisos en Firebase.
Se trata de un servicio que tuvo unos inicios similares a Firebase pero que en la actualidad se ha centrado en el envío de mensajes, especializándose en los negocios.
Permite personalizar la forma en la que los negocios se comunican con los clientes, sin que importe el dispositivo, ya que se unifica todo a través de su plataforma.
En cierta manera, es el más parecido a Firebase, ya que nos permite integrar en nuestra app una serie de plugins (sockets) muy similares a los ofrecidos por Google. Cuenta con notificaciones push, autenticación, bots de chat, etc...
Para ello, nos proporciona una sencilla herramienta que gestiona toda la integración y el despliegue de nuestra app.
Es un servicio que principalmente se centra en el almacenamiento de información, autenticación de usuario y envío de notificaciones push.
Una de las ventajas es que es un producto gratuito y Open Source.
En conclusión, Firebase es una plataforma muy completa y útil para el desarrollo de aplicaciones móviles y web. Ofrece una gran cantidad de herramientas y servicios que pueden ayudar a las empresas a mejorar la experiencia de los usuarios y aumentar la interacción y fidelidad de los mismos.
Si estás interesado en aprender cómo utilizar Firebase en profundidad, te invitamos a que te unas a nuestro curso especializado en Firebase. En él, podrás profundizar en los diferentes servicios que ofrece Firebase, aprender a utilizarlos de manera efectiva y sacar el máximo provecho de esta plataforma para el desarrollo de tus aplicaciones. ¡No dudes en inscribirte y dar un paso adelante en el desarrollo de tus proyectos!
¡Me interesa!