当数据从数据库为空时,Firebase会收到错误

时间:2018-01-09 09:37:48

标签: android firebase firebase-realtime-database

FirebaseRef.addValueEventListener(new ValueEventListener() {
    @Override
    public void onDataChange(DataSnapshot snapshot) {
        name = snapshot.child("username").getValue().toString();
        String myUrl = snapshot.child("photoURL").getValue().toString();
        txtFullName.setText(name);
        txtWelcome.setText("Hoşgeldin " + name);

        if(myUrl.isEmpty()) {
            changePhotoWithName(name);
        }
        else {
            changePhoto(myUrl);
        }
    }
}

这里是我的代码,使用FirebaseRef listennig数据库和反向数据,但问题是我的数据同时为空且出错。

2 个答案:

答案 0 :(得分:1)

试试这个..

    if(myUrl.length()>0){
      if(myUrl.isEmpty()){
          changePhotoWithName(name);
       }
        else {
            changePhoto(myUrl);
        }
   }

答案 1 :(得分:1)

FirebaseRef.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot snapshot) {

            if(snapshot.exists()){
                name = snapshot.child("username").getValue().toString();
                String myUrl = snapshot.child("photoURL").getValue().toString();
                txtFullName.setText(name);
                txtWelcome.setText("Hoşgeldin " + name);

                if(myUrl.isEmpty()){
                    changePhotoWithName(name);
                }
                else {
                    changePhoto(myUrl);
                }

            }

        }