【问题标题】:Firebase retrieving the child value from realtime database of FirebaseFirebase 从 Firebase 的实时数据库中检索子值
【发布时间】:2016-11-23 15:29:35
【问题描述】:

我是 Firebase 和 Android 的新手。我已在我的 Firebase 帐户中存储了用户身份验证详细信息(姓名、个人资料图片,而不是电子邮件 ID)。我想将这些数据(例如名称等)检索到我的应用程序的其他部分。如何检索我的实时数据库子值?

【问题讨论】:

标签: android firebase firebase-realtime-database


【解决方案1】:
final FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference ref = database.getReference("userID").child("displayName");

// Attach a listener to read the data at our posts reference
ref.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot dataSnapshot) {
        String displayName = dataSnapshot.getValue().toString();
        System.out.println(displayName );
    }

更多: Read and Write Data on Android - Firebase Documentation

【讨论】:

  • dataSnapshot.getValue().toString();转到 null 对象引用上的 error.called=method 'java.lang.String java.lang.Object.toString()'
【解决方案2】:

如果你想得到所有用户的名字,那么你可以这样做

DatabaseReference mRef = FirebaseDatabase.getInstance().getReference();

        mRef.child("users").addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                for(DataSnapshot snapshot: dataSnapshot.getChildren()){
                    Log.v("user_name", snapshot.getValue(String.class));
                }
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-08
    • 2019-04-16
    • 2020-12-09
    • 1970-01-01
    • 2021-02-06
    • 1970-01-01
    • 2017-10-06
    相关资源
    最近更新 更多