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的原因。
答案 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();