【发布时间】:2020-09-03 22:57:17
【问题描述】:
我想获取Firebase实时数据库中子节点的key,也就是UID。我正在随机选择一个子节点,现在我想获取该子节点的密钥,以便对其进行进一步的操作。
databaseReferencePickers.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
try {
int pickerCount = (int) dataSnapshot.getChildrenCount();
Random random = new Random();
int rand = random.nextInt(pickerCount);
Iterator itr = dataSnapshot.getChildren().iterator();
for(int i = 0; i <= rand; i++) {
itr.next();
}
pickerDetails = itr.next().toString();
ObjectMapper oMapper = new ObjectMapper();
map = oMapper.convertValue(itr.next(), Map.class);
//pickerUID = Objects.requireNonNull(map.get("key")).toString();
pickerUID = dataSnapshot.getKey();
Toast.makeText(OrderPickupActivity.this,pickerUID,Toast.LENGTH_LONG).show();
} catch (Exception e) {
Toast.makeText(OrderPickupActivity.this, e.toString(), Toast.LENGTH_LONG).show();
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
你能帮帮我吗?每当我敬酒“PickerUID”的值时,我得到的值为 null。
我想从选择器部分检索密钥。
【问题讨论】:
-
请将您的数据库结构添加为 JSON 文件或至少是屏幕截图,并指明您想要获取的确切数据。
-
请将其添加到您的问题中,而不是作为外部链接。你可以使用imgbb.com。
-
我试过了,现在检查问题
-
“该页面不存在”。
-
我现在更改了链接
标签: java android firebase firebase-realtime-database random