获取当前用户子项时出错,firebase
error getting currentuser child , firebase
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 的原因。
您似乎跳过了一个 child,因此 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();
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 的原因。
您似乎跳过了一个 child,因此 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();