gpt4 book ai didi

android - Firebase Android 获取未知 key 的值

转载 作者:行者123 更新时间:2023-11-29 16:44:29 25 4
gpt4 key购买 nike

我的 Firebase 数据库中有一个对象列表,每个对象的键是一个时间戳。我可以使用limitToLast(1) 得到最后一个,我得到的数据快照是:

{ key = time_stamps, value = {1510768441759={id=f454445c6e880df31e, coordinates={latitude=-4.1461734, longitude=20.5992437}}} }

其中 1510768441759 是时间戳。

如何读取坐标?我试图将值转换为 POJO,但我不能,因为时间戳对我来说是未知的,而在 POJO 中,它将是属性的名称......

谢谢。

最佳答案

如果你在没有父 POJO 而只有坐标 pojo 的情况下这样做,你可以通过数据快照执行以下操作:

Query query = ref.child("time_stamps").orderByKey();
query.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot item: dataSnapshot.getChildren()){
if (!dataSnapshot.hasChildren()) {
return;
}
for(DataSnapshot childSnapShot :item.getChildren()){
final String timestamp = childSnapShot.getKey();
final DataSnapshot parentSnapShot = childSnapShot.child(timestamp);
if (!parentSnapShot.hasChildren()) {
continue;
}
Double latitude = parentSnapShot.child("latitude").getValue(Double.class);
Double longitude = parentSnapShot.child("longitude").getValue(Double.class);
}
}


}
@Override
public void onCancelled(DatabaseError databaseError) {

}
});

等等

关于android - Firebase Android 获取未知 key 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49056342/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com