Получить данные по идентификаторам пользователей из базы Firebase - PullRequest
0 голосов
/ 29 ноября 2018

У меня проблема с тем, как извлечь все данные из uids для вывода строки списка. Но я не знаю, как передать uids.

Here is the sample database structure.The red one is the uid of each user.The green one is the random push key. Редактировать Я хочучтобы получить все данные .. Я имею в виду, что там может быть много uid и их дочерних элементов. Я хочу получить доступ ко всем uid (не только мой uid, но и другие uid в узле mdg) .? Пожалуйста, помогите мне ...

1 Ответ

0 голосов
/ 29 ноября 2018

Создайте глобальный ArrayList в вашем Activity

private ArrayList<User> arrayList = new ArrayList<>();

. Вам нужен класс Model для хранения всех данных.

class User {

    private String postText, uploadTime , Uplaoder;


    public User(String postText, String uploadTime, String uplaoder) {
        this.postText = postText;
        this.uploadTime = uploadTime;
        Uplaoder = uplaoder;
    }

    //getter setter here..

}

Тогда в вашем Activity

    DatabaseReference reference = FirebaseDatabase.getInstance().getReference().child("msg");

    reference.addListenerForSingleValueEvent(new ValueEventListener() {
        @Override
        public void onDataChange(DataSnapshot dataSnapshot) {
            for (DataSnapshot snapshotMessages : dataSnapshot.getChildren()) {
                for (DataSnapshot snapshot : snapshotMessages.getChildren()) {

                    String post_text = snapshot.child("post_text").getValue(String.class);
                    String upload_time = snapshot.child("upload_time").getValue(String.class);
                    String uploader_name = snapshot.child("uploader_name").getValue(String.class);

                    User user = new User(post_text, upload_time, uploader_name);

                    arrayList.add(user);

                }
            }
        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...