Я пытаюсь запрашивать элементы в базе данных firebase на основе значения атрибута.Вложенная величина Firebase
Вот моя структура:
Вот мой POJO объект:
public class LapTime {
private int vehicleType;
private String track;
private String user;
private int time;
}
А вот мой код запроса:
mDatabase.child("lap-time").orderByChild("track").equalTo(mTrackUuid).addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
time = dataSnapshot.getValue(LapTime.class).getTime() + "ms");
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
Моя проблема заключается в том, что datasnapshot Я возвращаюсь для корня lap-time
, а не U UID, таким образом getValue(LapTime.class)
дать мне пустой объект ...
Вот datasnapshot я получаю:
DataSnapshot { key = lap-time, value = {-KXwSxD0GYVC6awV8abw={track=-KXwSxCeV2Ib4Gt4pvjy, time=105000, vehicle-type=0, user=ZQKwPfRF0mVL5jAO7FaSPcsF7t42}} }
И это то, что я хотел бы получить:
DataSnapshot { key = -KXwSxD0GYVC6awV8abw, value ={track=-KXwSxCeV2Ib4Gt4pvjy, time=105000, vehicle-type=0, user=ZQKwPfRF0mVL5jAO7FaSPcsF7t42}} }
Как может Я делаю это?
может быть аналогичной проблемой для http://stackoverflow.com/questions/40928787/cannot-retrieve-a-list-into-firebase-database/40929176?noredirect=1#comment69070082_40929176 –
Вы хотите разобрать всех детей времени круга или конкретного? Вы можете выполнять итерацию через дочерние элементы с помощью 'dataSnapshot.getChildren()'. В противном случае вам нужно установить 'ValueEventListener' на узле с UID – Sunshinator