Sto usando FirebaseRecyclerAdapter
per visualizzare i messaggi di chat.Applicare un filtro su FirebaseRecyclerAdapter
private void attachRecyclerViewAdapter() {
lastFifty = mChatRef.limitToLast(50).;
mRecyclerViewAdapter = new FirebaseRecyclerAdapter<Chat, ChatHolder>(
Chat.class, R.layout.message, ChatHolder.class, lastFifty) {
@Override
public void populateViewHolder(ChatHolder chatView, Chat chat, int position) {
chatView.setName(chat.getName());
chatView.setText(chat.getText());
chatView.setTimeLocation(chat.getTime());
FirebaseUser currentUser = mAuth.getCurrentUser();
if (currentUser != null && chat.getUid().equals(currentUser.getUid())) {
chatView.setIsSender(true);
} else {
chatView.setIsSender(false);
}
}
};
Ho una lista che contiene un elenco di utenti specifici. Vorrei applicare il filtro per vedere solo i messaggi di quegli utenti specifici. Cosa dovrei fare ?
C'è un open [richiesta di funzionalità su FirebaseUI per aggiungendo la possibilità di filtrare] (https: //github.com/firebase/FirebaseUI-Android/issues/15). –
Sarebbe sempre consigliabile provare a fare il filtraggio sul lato server. Hai cercato di impedire agli utenti di inviare messaggi ad altri utenti che non hanno ancora aggiunto o bloccato? In un'app a cui sto lavorando consento agli utenti di aggiungere qualsiasi utente desiderino, ma consentirò loro di inviare messaggi solo se l'altro utente li ha aggiunti. –
-1 down vote \t hai considerato l'utilizzo di un nodo dedicato nel database Firebase per quegli utenti specifici? – Andrea