小编Vin*_*ano的帖子

如何从dataSnapshot获得价值?

当我调试此代码时,在databaseUser中dataSnapshot在数据库中具有User的值,但是在object中user1,未添加,则全部为null。而且我不明白,因为在对象事件中正常接收值。

databaseEvent.child(getKeyEvent()).addListenerForSingleValueEvent( 
      new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {

               final Event event = dataSnapshot.getValue(Event.class);
               user = FirebaseAuth.getInstance().getCurrentUser();
               if(user != null) {

                   databaseUser.orderByChild("userEmail").equalTo(user.getEmail()).addListenerForSingleValueEvent(new ValueEventListener() {
                     @Override
                     public void onDataChange(DataSnapshot dataSnapshot) {
                         if (dataSnapshot.exists()) {
                             //User already exists
                             User user1 = dataSnapshot.getValue(User.class);
              }
       }
});
Run Code Online (Sandbox Code Playgroud)

我的数据库用户,目前仅用于测试:

public class User {

String userId;
String userEmail;
Boolean userHasInterest;
String eventId;

public String getUserId() {
    return userId;
}
public String getUserEmail() {
    return userEmail;
}

public Boolean getUserHasInterest() {
    return userHasInterest; …
Run Code Online (Sandbox Code Playgroud)

java android firebase firebase-realtime-database

3
推荐指数
1
解决办法
9214
查看次数