这是我的FirebaseDatabase结构。
如何从Firebase数据库访问此“ 1”值(顶部图片)
获取alerts
属性值的最简单方法是:
DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference alertsRef = rootRef.child("Alert").child("1").child("alerts");
ValueEventListener valueEventListener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
long alerts = dataSnapshot.getValue(Long.class);
Log.d(TAG,String.valueOf(alerts));
}
@Override
public void onCancelled(@NonNull DatabaseError databaseError) {
Log.d(TAG,databaseError.getMessage()); //Don't ignore errors!
}
};
alertsRef.addListenerForSingleValueEvent(valueEventListener);
您的logcat中的结果将是:
1
因此,为了获取Firebase记录的值,您需要对树中的每个子级进行child()
调用。您还可以更简单地使用:
DatabaseReference alertsRef = rootRef.child("Alert/1/alerts");
,
mDatabase = FirebaseDatabase.getInstance()。getReference(); mDatabase.child(“ elon **”)。child(“ Alert”)。child(“ 1”)。child(“ alert”)。child(“ 1”)。setValue(xxxxx)