如何使用Android获取Fire base数据库中所有子项的一个特定值
我想从我的Firebase数据库中获取所有名称,这是我的代码片段如何使用Android获取Fire base数据库中所有子项的一个特定值,android,firebase,firebase-realtime-database,Android,Firebase,Firebase Realtime Database,我想从我的Firebase数据库中获取所有名称,这是我的代码片段 databaseRef.child('Users').addValueEventListener(new ValueEventListener() { @Override public void onDataChange (DataSnapshot dataSnapshot) { // } } @Override public void onCancelled (DatabaseError databaseError
databaseRef.child('Users').addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange (DataSnapshot dataSnapshot) {
//
}
}
@Override
public void onCancelled (DatabaseError databaseError) {
} };);
查询
用户的所有节点
:
databaseRef.child('Users').addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange (DataSnapshot dataSnapshot) {
for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
// parse the snapshot to your local model
User user = postSnapshot.getValue(User.class);
// access your desired field
String name = user.getName();
}
}
@Override
public void onCancelled (DatabaseError databaseError) {
}
};
);
尝试下面的代码…其中UserDetails是一个POJO类
datbabseref = FirebaseDatabase.getInstance().getReference().child("Users");
databaseRef.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
try {
parkingList.clear();
for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
STSParkingDetails post = postSnapshot.getValue(UserDetails.class);
UserDetails.class userDetails = new UserDetails.class(post.getName(),post.getAge(),post.getEmail(),post.getPhone());
parkingList.add(stParkingDetails);
}
saveParkingLocation();
} catch (Exception e) {
Log.e(TAG, "Exception e = " + e.getLocalizedMessage());
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
Log.d(TAG, databaseError.toString());
}
});
谢谢你证明它对我有帮助:)你能解释一下这条线的工作原理吗。STSParkingDetails post=postSnapshot.getValue(UserDetails.class);