12

Prototipado Rapido Android y Cloud Firestore

14Puntos

hace 2 años

Curso de Kotlin con Firebase Firestore
Curso de Kotlin con Firebase Firestore

Curso de Kotlin con Firebase Firestore

Cloud Firestore es el nuevo almacenamiento en tiempo real que ofrece Firebase. Aprende desde el diseño, manipulación y seguridad en bases de datos usando Firestore de Firebase, Crea una base de datos realtime 100% funcional para todas tus aplicaciones Android.

Hace unos 7 años, cuando inicie mi carrera de programador, decidí especializarme en la plataforma Android. En ese momento no era tan sencillo que una sola persona construyera una aplicación completa, que sincronizará sus datos con la nube. La tecnología avanza muy rápido y cada vez más diferentes proveedores de tecnología, nos ofrecen soluciones que nos permiten acortar el ciclo de desarrollo de software.

Firebase es una de las plataformas más completas que existen en el mercado enfocada al desarrollo móvil. Usando Firebase te puedes despreocupar de tu backend y enfocarte en tu producto móvil. Firebase ofrece soluciones fáciles de integrar y para diversas plataformas (Android, iOS y Web). Dentro de los módulos principales que ofrece Firebase encontramos los siguientes:

  • Cloud Firestore
  • Autenticación
  • Cloud Functions
  • Cloud Storage
  • Cloud Messaging (Push notifications para Android)
  • Crashlytics
  • Hosting
  • Machine Learning Kit
  • Analytics

Para comenzar a utilizar Firebase en tu aplicación sólo necesitas crear una cuenta en la consola de Firebase, crear un nuevo proyecto y realizar la configuración específica de la plataforma con la que te vas a integrar:

InicioFirebase.png

Una vez has configurado tu proyecto deberás activar alguno de los mecanismos de autenticación y realizar su implementación. Esto te permitirá interactuar con el módulo de base de datos en tiempo real Cloud Firestore.

PanelFirebase.png

Uno de los métodos de autenticación ofrecidos es el de autenticación anónima. Esta te permitirá crear cuentas con acceso temporal a los datos protegidos por reglas de seguridad.

En una aplicación Android podrás autenticarte de manera anónima de la siguiente forma:

FirebaseAuth.getInstance().signInAnonymously()
    .addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
        @Override
        public void onComplete(@NonNull Task<AuthResult> task) {
            if (task.isSuccessful()) {
                // Autenticación Exitosa
                FirebaseUser user = mAuth.getCurrentUser();
                updateUI(user);
            } else {
                // Autenticación  no Exitosa
        Log.w(TAG, "signInAnonymously:failure", task.getException());
                updateUI(null);
            }

Cloud Firestore está diseñado como una base de datos noSQL, flexible y que escala de manera automática. Puedes crear estructuras de datos tipo JSON o documentos y colecciones de los mismos directamente desde la consola:
BasedatosFirestore.png

Estos documentos los puedes consultar a través de referencias a las colecciones (cryptos y users). Una vez tienes la referencia podrás realizar dos tipos de lectura de los documentos de cada colección:

Lectura Directa de todos los objetos de una colección:

db.collection("cities")
    	.get()
        .addOnSuccessListener { result ->
           for (document in result) {
            Log.d(TAG, document.id + " => " + document.data)
        }
    }
    .addOnFailureListener { exception ->
        Log.d(TAG, "Error getting documents: ", exception)
    }

En este caso realizaremos la lectura de todos los documentos en la colección cities.

Observar cambios en una colección o documento y ser notificado:

db.collection("cities").doc("SF")
	.onSnapshot(function(doc) {
            console.log("Current data: ", doc.data());
});

Con esta segunda alternativa podrás crear experiencias real time en tus aplicaciones. Una vez te suscribas a cambios en un documento (en este caso la ciudad San Francisco SF), usando el método onSnapshot serás notificado automáticamente cada vez que cualquier usuario realice cambios sobre este documento.

Esto es una breve introducción a lo que puedes crear usando Firestore, si quieres conocer más te invito a te suscribas a Platzi y realices el curso de Firestore para Android, donde crearemos juntos una aplicación que simula la compra de criptomonedas en tiempo real.

Curso de Kotlin con Firebase Firestore
Curso de Kotlin con Firebase Firestore

Curso de Kotlin con Firebase Firestore

Cloud Firestore es el nuevo almacenamiento en tiempo real que ofrece Firebase. Aprende desde el diseño, manipulación y seguridad en bases de datos usando Firestore de Firebase, Crea una base de datos realtime 100% funcional para todas tus aplicaciones Android.
Santiago
Santiago
@sancarbar

14Puntos

hace 2 años

Todas sus entradas
Escribe tu comentario
+ 2
2

Tengo entendido que es cierto, que con Firebase probablemente abarcaremos el 90% de las situaciones para desarrollar nuestra app móvil. Sin embargo queda un 10% sin cobertura

De la misma manera puede convertirse en una compleja situación si se tiene en mente construir un proyecto muy grande, una red social compleja o cualquier tipo de plataforma tipo…hmmmm, no se, Amazon tal vez.