最佳答案
假设 teLm ... IWV2
是经过身份验证的用户的 uid
,则仅显示这些 key 24_1_2020
、25_1_2020
,请使用以下代码行:
String uid = FirebaseAuth.getInstance().getCurrentUser().getUid();
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference uidRef = rootRef.child("Mensaje").child(uid);
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot ds : dataSnapshot.getChildren()) {
String key = ds.getKey();
Log.d(TAG, key);
}
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Log.d(TAG, databaseError.getMessage()); //Don't ignore errors!
}
};
uidRef.addListenerForSingleValueEvent(valueEventListener);
看,我已经使用了 getChildren()
方法来循环访问 DataSnapshot
对象,该对象基本上包含了 uid
节点下的所有子级。调用getKey()
可以获取每个child对应的key。
如果 teLm ... IWV2
不是经过身份验证的用户的 uid
,则只需将该字符串直接添加到您的引用中即可:
DatabaseReference uidRef = rootRef.child("Mensaje").child("teLm ... IWV2");
关于java - 如何从 firebase 获取 json 列的名称?我在问题下面留下了一个例子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59904099/