Я делаю приложение для Android. Я хочу публиковать объявления людей. Но я застрял одна проблема. Я не могу запросить всех детей. У меня есть 2 типа информации. Это выбранные категории и имя пользователя (@ перед словами.) Я хочу публиковать все объявления людей в соответствии с категорией. Но я не могу охватить всех детей и не знаю, как это сделать. Кстати; Когда я достиг всего ребенка. Я не знаю, как добраться до их корня. К сожалению: я не могу правильно объяснить мою проблему.
Так что: я покажу вам с изображениями мою проблему.
Вот моя база на огне, как видеть:

Например: я ищу "Kadın Sağlığı".

После того, как мне нужно найти эти корни:

И, наконец, вот мой код:
firebaseDatabase = FirebaseDatabase.getInstance();
uzmanlar_firebaseDatabase = firebaseDatabase.getReference("Uzman/");
uzmanlar_firebaseDatabase.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
uzman_kisiler_ilanlar_array.clear();
for (DataSnapshot ds : dataSnapshot.getChildren()) {
String child = ds.getKey();
uzman_kisiler_ilanlar_array.add(child);
for (int i = 0; i < uzman_kisiler_ilanlar_array.size(); i++) {
Log.i(TAG, "uzmanlarım: " + uzman_kisiler_ilanlar_array.get(i).toString() + " " + uzman_kisiler_ilanlar_array.size() );
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
for (String s: uzman_kisiler_ilanlar_array
) {
uzmanlar_yetenekler_firebaseDatabase = firebaseDatabase.getReference("Uzman/" + s + "/" + "yetenekler/" );
uzmanlar_yetenekler_firebaseDatabase.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot ds:dataSnapshot.getChildren()
) {
String ss = ds.getValue().toString();
Log.i(TAG, "yetenekl: " + ss );
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}
Как я могу это сделать?