Firebase DatabaseException

时间:2018-05-20 03:00:35

标签: android firebase-realtime-database

我打开特定活动时出现此错误

  

com.google.firebase.database.DatabaseException:无法将java.lang.String类型的对象转换为com.example.joe.metery.ChatMessage

类型

可以在此方法中找到错误:

 private void displayChatMessage() {

    ListView listOfMessages = findViewById(R.id.list_of_messages);
    adapter = new FirebaseListAdapter<ChatMessage>(this, ChatMessage.class, R.layout.list_item_message,
            mDatabaseRefUser.child("Chat").child(mAuth.getCurrentUser().getUid())
                    .child(userID).child(uploadID).child("Messages")) {
        @Override
        protected void populateView(View v, ChatMessage model, int position) {

            TextView messageText, messageUser, messageTime;

            messageText = v.findViewById(R.id.message_text);
            messageUser = v.findViewById(R.id.message_user);
            messageTime = v.findViewById(R.id.message_time);
            model.setMessageTime(new Date().getTime());

            messageText.setText(model.getMessageText());
            messageUser.setText(model.getMessageUser());
            messageTime.setText(DateFormat.format("dd-MM-yyyy (HH:mm:ss)", model.getMessageTime()));

        }
    };

    listOfMessages.setAdapter(adapter);

}

在做了很多改变后我自己找不到。

1 个答案:

答案 0 :(得分:0)

尝试一下

 Query query = FirebaseDatabase.getInstance().getReference().child("chats"); 
FirebaseListOptions<ChatMessage> options = new FirebaseListOptions.Builder<ChatMessage>()
                .setQuery(query, ChatMessage.class)
                 .setLayout(R.layout.message)
                .build();               

adapter =新的FirebaseListAdapter(选项){