仅从存储在firebase中的用户详细信息中检索用户名

时间:2017-05-17 04:44:41

标签: android firebase firebase-realtime-database

我正在尝试在Android工作室中创建登录活动,同样,我需要一次一个字符串中检索存储在firebase中的艺术家名称列表,以便我可以执行身份验证。如何完成? 我是firebase的新手。请帮忙。

这是我的模特课

public class Artist {

String artistId;
String artistName;
String artistGenre;

public Artist(){}

public Artist(String artistName, String artistId, String artistGenre) {
    this.artistName = artistName;
    this.artistId = artistId;
    this.artistGenre = artistGenre;
}

public String getArtistId() {
    return artistId;
}



public String getArtistName() {
    return artistName;
}


public String getArtistGenre() {
    return artistGenre;
}

}

我附上了数据库结构图像

Structure of Database

2 个答案:

答案 0 :(得分:0)

请尝试此

for (DataSnapshot data : dataSnapshot.getChildren()) {
    String Name = String.valueOf(data.child("artistName").getValue());
    list.add(Name);

}

答案 1 :(得分:0)

  

从firebase检索数据(Artist节点)的代码下方。

 public void getAllUsersFromFirebase() {
    DatabaseReference UserRef = FirebaseDatabase.getInstance().getReference().child("artists");
    UserRef.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            Iterator<DataSnapshot> dataSnapshots = dataSnapshot.getChildren().iterator();
            List<Artist > artistUsers = new ArrayList<>();
            while (dataSnapshots.hasNext()) {
                DataSnapshot dataSnapshotChild = dataSnapshots.next();
                Artist  artist  = dataSnapshotChild.getValue(Artist.class);
                artistUsers.add(artist);

            }
            mOnGetAllUsersListener.onGetAllUsersSuccess(artistUsers);
        }

        @Override
        public void onCancelled(DatabaseError databaseError) {
            mOnGetAllUsersListener.onGetAllUsersFailure(databaseError.getMessage());
        }
    });
}