Я пытаюсь создать приложение для чата с использованием firebase. У меня возникла проблема в адаптере просмотра firebase, он показывает эту ошибку
Не удалось преобразовать значение типа java.util.HashMap в строку
Моя структура Пользователь -> IDuser -> Чат -> Идентификатор чата -> Сообщения -> Идентификатор сообщения
Чат содержит все разговоры пользователя deffrente
мой код:
@Override
protected void onStart() {
super.onStart();
Query query = FirebaseDatabase.getInstance().getReference().child("User").child(Cuid).child("Chat").child(idconvC).child("messages").getRef();
FirebaseRecyclerOptions<Message> options =
new FirebaseRecyclerOptions.Builder<Message>()
.setQuery(query,Message.class)
.build();
firebaseRecyclerAdapter = new FirebaseRecyclerAdapter<Message,Conv.ConvViewHolder>
(options) {
@NonNull
@Override
public Conv.ConvViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
// Create a new instance of the ViewHolder, in this case we are using a custom
// layout called R.layout.message for each item
View view = LayoutInflater.from(parent.getContext())
.inflate(R.layout.messagerow, parent, false);
return new Conv.ConvViewHolder(view);
}
@Override
protected void onBindViewHolder (@NonNull Conv.ConvViewHolder viewHolder,final int position,@NonNull Message model) {
if (model.getUsername().equals(Cusername)) {
viewHolder.seturi(getApplicationContext(),model.getUri());
viewHolder.setusername(model.getUsername());
viewHolder.setmsg(model.getMessage());
viewHolder.itemView.setBackgroundColor(Color.parseColor("#d3d3d3"));
// Gravity right
}
else {
viewHolder.seturi(getApplicationContext(),model.getUri());
viewHolder.setusername(model.getUsername());
viewHolder.setmsg(model.getMessage());
// Gravity left
}
}
};
recyclerView.setAdapter(firebaseRecyclerAdapter);
firebaseRecyclerAdapter.startListening();
}
моя база данных: