Firebase.database.databaseexception: ожидал карту при десериализации, но получил класс java.lang.stringAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Firebase.database.databaseexception: ожидал карту при десериализации, но получил класс java.lang.string

Сообщение Anonymous »

Я пытаюсь использовать базу данных Firebase, но я получаю это исключение (в заголовке). Сначала я написал в рамках Ondatachange: Map Map = dataSnapShot.getValue (map.class);
< /code>, но затем они попросили меня использовать GenericTyPeindicator, который я сделал. Однако теперь я получаю это новое исключение. Как это исправить? .sstatic.net/wxdcb.png "/>

< /p>

//accessing the firebase database
database=FirebaseDatabase.getInstance();
//creates a database references
databaseRef1=database.getReference().child("Ben_Ptolemy");
databaseRef2=database.getReference().child("Ptolemy_Ben");

sendButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String messageText = messageArea.getText().toString();

if(!messageText.equals("")){
Map map = new HashMap();
map.put("message", messageText);
map.put("user", "Ben");
databaseRef1.push().setValue(map);
databaseRef2.push().setValue(map);
messageArea.setText("");
}
}
});

databaseRef1.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Log.d("firebase received", "true");

GenericTypeIndicator genericTypeIndicator = new GenericTypeIndicator() {};
Map map = dataSnapshot.getValue(genericTypeIndicator );
String message = map.get("message").toString();
String userName = map.get("user").toString();

if(userName.equals("Ben")){
addMessageBox("You:-\n" + message, 1);
}
else{
addMessageBox("Ptolemy" + ":-\n" + message, 2);
}
}


Подробнее здесь: https://stackoverflow.com/questions/498 ... ng-but-got
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»