Firebase.database.Databaseexception: Erwartete eine Karte während des Deserialisierens, bekam aber eine Klasse java.langAndroid

Forum für diejenigen, die für Android programmieren
Anonymous
 Firebase.database.Databaseexception: Erwartete eine Karte während des Deserialisierens, bekam aber eine Klasse java.lang

Post by Anonymous »

Ich versuche, die Firebase -Datenbank zu verwenden, aber ich erhalte diese Ausnahme (im Titel). Zuerst habe ich unter Ondatachange geschrieben: map map = datasNapshot.getValue (map.class);
< /code> Aber dann haben sie mich gebeten, einen GenericTypeindicator zu verwenden, was ich getan habe. Ich bekomme jedoch jetzt diese neue Ausnahme. Wie behebe ich das? .Sstatic.net/wxdcb.png "/>

< /p>

Code: Select all

    //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);
}
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post