¿Cómo devolver una lista de la base de datos de Firestore como resultado de una función en Kotlin?

Resuelto H M Z asked hace 54 años • 0 respuestas

Estoy creando una aplicación para un amigo y uso Firestore. Lo que quiero es mostrar una lista de lugares favoritos pero por alguna razón la lista siempre está vacía.

ingrese la descripción de la imagen aquí

No puedo obtener los datos de Firestore. Este es mi código:

fun getListOfPlaces() : List<String> {
    val places = ArrayList<String>()
    placesRef.get().addOnCompleteListener { task ->
        if (task.isSuccessful) {
            for (document in task.result) {
                val name = document.data["name"].toString()
                places.add(name)
            }
        }
    }
    return list;
}

Si intento imprimir, digamos el tamaño de la lista en onCreatefunción, el tamaño siempre es 0.

Log.d("TAG", getListOfPlaces().size().toString()); // Is 0 !!!

Puedo confirmar que Firebase se instaló correctamente. ¿Qué me estoy perdiendo?

H M Z avatar Jan 01 '70 08:01 H M Z