Как получить список с названиями полей FireBase

Появилась проблема с получением названий записей в FireBase. Вот скрин БД Скрин БД

Мне нужно просто получить список названий. Так же вот функция.

private fun init3(userName:String) {

        var listOfFavourite = ArrayList<String>()

        mDataBase = FirebaseDatabase.getInstance().getReference("users")
        mDataBase.child(userName).child("favourite")
            .addValueEventListener(object : ValueEventListener {
                override fun onDataChange(snapshot: DataSnapshot) {
                    if (snapshot.exists()) {
                        listOfFavourite.add(snapshot.value.toString())
                    }
                }    
                override fun onCancelled(error: DatabaseError) {
                    Toast.makeText(
                        this@MainActivity,
                        error.message, Toast.LENGTH_SHORT
                    ).show()
                }
            })
    }

Должно получиться что-то типа ("Анальгин", "Кагоцел", "Парацетомол")


Ответы (1 шт):

Автор решения: Teip

Разобрался, нужно было просто в if добавить вот этот цикл

if (snapshot.exists()) {
   for (favouriteSnapshot in snapshot.children) {
       listOfFavourite.add(favouriteSnapshot.key.toString())
   }
}
→ Ссылка