错误获取currentuser孩子,firebase

时间:2019-01-13 22:23:27

标签: android firebase firebase-realtime-database getter

这是我的代码

myRef.child("Donors").child(currentFirebaseUser.getUid()).addValueEventListener(new ValueEventListener() {
                @Override
                public void onDataChange(DataSnapshot dataSnapshot) {
                    user = dataSnapshot.getValue(UserInformation.class);
                    String s=user.getUserName();
...

我收到以下错误:  java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法'java.lang.String com.sy.food.UserInformation.getUserName()'。 我该如何运作?

[编辑] 这是我的数据库https://i.stack.imgur.com/fqDYP.png

[已解决] myRef不是直接将数据库的另一个孩子引用到数据库,因此我没有注意。这就是导致nullPointerException的原因。

1 个答案:

答案 0 :(得分:0)

似乎您正在跳过一个孩子,因此Firebase无法检索以下数据:

        myRef.child("food-d152b").child("Users").child(currentFirebaseUser.getUid()).addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            User user = snapshot.getValue(UserInformation.class);
            String s=user.getUserName();