Base de datos

Vamos a utilizar el mismo proyecto con el login de firebase y vamos a agregar el módulo de base de datos en tiempo real.

¿Cómo lo agregamos?

Vamos al Android Studio Tools->Firebase->Realtime Firebase

Aceptamos los cambios

Listo!! ya podemos utilizarlo

¿Cómo guardamos datos?

Definimos 2 atributos en nuestra activity

private FirebaseDatabase database;
private DatabaseReference refPublicaciones;

Creamos un método para iniciarlo

private void inicializarFirebase(){
   database = FirebaseDatabase.getInstance();
   refPublicaciones = database.getReference("publicaciones");
}

Para guardar datos hacemos referencia a la bd publicaciones y seteamos un objeto usuario

refPublicaciones.push().setValue(objeto));

Cuando hacemos un push, genera un id único y lo guarda en formato JSON en firebase

Podemos ver los datos guardados desde la consola de firebase

¿Cómo obtengo datos?

database = FirebaseDatabase.getInstance();
refPublicaciones  = database.getReference("publicaciones");
refPublicaciones.addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                listPost.clear();
                for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
                    Post post = postSnapshot.getValue(Post.class);
                    listPost.add(post);
                }
                publicacionesAdapter.notifyDataSetChanged();
            }
            @Override
            public void onCancelled(DatabaseError error) {
                System.out.println("Error al leer los datos de firebase ..." + error.toException());
            }
        });

Last updated

Was this helpful?