Как получить доступ к этому вложенному значению из базы данных Firebase в строковой переменной? - PullRequest
0 голосов
/ 05 ноября 2019

Вот моя структура FirebaseDatabase.

Firebase Database

Как получить доступ к этому значению «1» из базы данных Firebase (изображение вверху)

Ответы [ 2 ]

0 голосов
/ 05 ноября 2019

Самый простой способ получить значение вашего свойства alerts:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference alertsRef = rootRef.child("Alert").child("1").child("alerts");
ValueEventListener valueEventListener = new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        long alerts = dataSnapshot.getValue(Long.class);
        Log.d(TAG, String.valueOf(alerts));
    }

    @Override
    public void onCancelled(@NonNull DatabaseError databaseError) {
        Log.d(TAG, databaseError.getMessage()); //Don't ignore errors!
    }
};
alertsRef.addListenerForSingleValueEvent(valueEventListener);

Результат в вашем logcat будет:

1

Итак, чтобы получитьзначение записи Firebase, вам нужно сделать child() вызов для каждого потомка в дереве. Более простым способом вы также можете использовать:

DatabaseReference alertsRef = rootRef.child("Alert/1/alerts");
0 голосов
/ 05 ноября 2019

mDatabase = FirebaseDatabase.getInstance (). GetReference ();mDatabase.child ( "Элон **"). Ребенок ( "Предупреждение"). Ребенок ( "1"). Ребенок ( "тревога"). Ребенок ( "1"). SetValue (ххххх)

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