Как я могу получить значение в FireBase - PullRequest
0 голосов
/ 07 мая 2018

У меня есть база данных, которая выглядит следующим образом:

my database

И мой код такой:

myRef.addListenerForSingleValueEvent(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for (DataSnapshot uniqueKey:dataSnapshot.getChildren()) {
            for (DataSnapshot keysiswa:uniqueKey.getChildren()) {
                for (DataSnapshot valuesiswa:keysiswa.child("nama_siswa").getChildren()) {
                    String c = valuesiswa.getValue().toString();
                    Log.i(TAG,c);
                }
            }
        }
    }

Я хочу принять значение "nama_siswa", но в logcat ничего не происходит. Что не так с моим кодом?

Ответы [ 2 ]

0 голосов
/ 07 мая 2018

Чтобы получить значение nama_siswa свойства, используйте следующий код:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference siswaRef = rootRef.child("siswa");
ValueEventListener valueEventListener = new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        for(DataSnapshot ds : dataSnapshot.getChildren()) {
            String nama_siswa = ds.child("nama_siswa").getValue(String.class);
            Log.d("TAG", nama_siswa);
        }
    }

    @Override
    public void onCancelled(DatabaseError databaseError) {}
};
siswaRef.addListenerForSingleValueEvent(valueEventListener);

Вывод будет:

chandra
coba
0 голосов
/ 07 мая 2018

Попробуйте этот код.

        DatabaseReference reference = FirebaseDatabase.getInstance().getReference("siswa");
    reference.addListenerForSingleValueEvent(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            Log.d("Name:",dataSnapshot.getValue(User.class).name); // define your pojo class
        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...