Я работаю над приложением, похожим на 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();
}
Вот скриншоты базы данных:
Ниже приведен пользователь, который принял мой запрос, что означаетЯ следую за ним сейчас:
Это сообщения пользователя:
Я тоже думал об использовании orderByChild (). Equals ("theFollower") , не смог разобраться. Как этого добиться?Как только ограниченные пользователи, то есть только подписчики могут видеть мои сообщения?
Большое спасибо!