Как показать данные только подписчикам или подписчикам в базе данных Firebase в Android? - PullRequest
1 голос
/ 01 мая 2019

Я работаю над приложением, похожим на LinkedIn, и здесь у меня есть пользователи, уже добавленные в базу данных Firebase.Также каждый пользователь может публиковать или загружать контент.Сейчас я ищу технику или фрагмент кода, который позволяет мне перечислять посты только тем, кто подписан на других. "Например: если я буду следовать за вами, я смогу увидеть ваш загруженный контент в новостных лентах или на главном экране". Для вывода сообщений использую Firebase Recycler Adapterи RecyclerView .

Ниже приведен мой код для перечисления сообщений:

@Override
public void onStart() {
    super.onStart();
    mAuth.addAuthStateListener(mAuthStateListener);

    FirebaseUser user = mAuth.getCurrentUser();

    final String userID = user.getUid();

    Query query = myRef;

    FirebaseRecyclerOptions<PostInfo> options = new FirebaseRecyclerOptions.Builder<PostInfo>()
            .setQuery(query, PostInfo.class)
            .build();

    FBRA = new FirebaseRecyclerAdapter<PostInfo, PostViewHolder>(options) {
        @Override
        protected void onBindViewHolder(@NonNull final PostViewHolder holder, int position, @NonNull PostInfo model) {

                holder.setPostUser(model.getPostUser());

                holder.setPostImage(model.getPostImage(), getActivity());

                holder.setPostDesc(model.getPostDesc());

                holder.setPostLikes(model.getPostLikes());

                holder.likeBtn.setOnClickListener(new View.OnClickListener() {
                    @Override
                    public void onClick(View v) {

                        holder.likeBtn.setImageResource(R.drawable.new_like_22);

                        holder.mLike.setTextColor(Color.parseColor("#1F7FB1"));

                    }
                });
        }

        @NonNull
        @Override
        public PostViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int i) {

            View view = LayoutInflater.from(getActivity()).inflate(R.layout.post_card, parent, false);

            return new PostViewHolder(view);

        }
    };

    mPostList.setAdapter(FBRA);

    FBRA.startListening();

}

Вот скриншоты базы данных:

Ниже приведен пользователь, который принял мой запрос, что означаетЯ следую за ним сейчас:

enter image description here

Это сообщения пользователя:

enter image description here

Я тоже думал об использовании orderByChild (). Equals ("theFollower") , не смог разобраться. Как этого добиться?Как только ограниченные пользователи, то есть только подписчики могут видеть мои сообщения?

Большое спасибо!

...