Ich versuche, meinem Android Studio-Projekt die Firebase-Datenbank hinzuzufügen. , wenn ich meine app renne (auf Emulator) Ich bin die folgende Fehlermeldung erhalten:"Fehler beim Springen auf den Fehler" beim Hinzufügen der Firebase-Datenbank zur Android-App
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.inbar.amit.ksharet, PID: 2778
com.firebase.client.FirebaseException: Failed to bounce to type
at com.firebase.client.DataSnapshot.getValue(DataSnapshot.java:183)
at com.inbar.amit.ksharet.updates$1.onChildAdded(updates.java:52)
at com.firebase.client.core.ChildEventRegistration.fireEvent(ChildEventRegistration.java:48)
at com.firebase.client.core.view.DataEvent.fire(DataEvent.java:45)
at com.firebase.client.core.view.EventRaiser$1.run(EventRaiser.java:38)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Caused by: com.fasterxml.jackson.databind.JsonMappingException: Can not deserialize instance of java.lang.String out of START_OBJECT token
at [Source: [email protected]; line: 1, column: 1]
at com.fasterxml.jackson.databind.DeserializationContext.mappingException(DeserializationContext.java:575)
at com.fasterxml.jackson.databind.deser.std.StringDeserializer.deserialize(StringDeserializer.java:46)
at com.fasterxml.jackson.databind.deser.std.StringDeserializer.deserialize(StringDeserializer.java:11)
at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:2888)
at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:2034)
at com.firebase.client.DataSnapshot.getValue(DataSnapshot.java:181)
... 11 more
, dass mein Code ist (für Daten aus der Datenbank zu lesen):
public class updates extends AppCompatActivity {
private Firebase mRef;
private ArrayList<String> messages = new ArrayList<>();
Random rnd = new Random();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_updates);
mRef = new Firebase("https://ksharet-d6a24.firebaseio.com/message");
// Get ListView object from xml
final ListView listView = (ListView) findViewById(R.id.ListView);
// Create a new Adapter
final ArrayAdapter<String> adapter = new ArrayAdapter<>(this,
android.R.layout.simple_list_item_1, messages);
// Assign adapter to ListView
listView.setAdapter(adapter);
mRef.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
String message = dataSnapshot.getValue(String.class);
Log.v("E_CHILD_ADDED", message);
messages.add(0, message);
adapter.notifyDataSetChanged();
}
@Override
public void onChildChanged(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onChildRemoved(DataSnapshot dataSnapshot) {
}
@Override
public void onChildMoved(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onCancelled(FirebaseError firebaseError) {
}
});
}
}
was soll ich tun etwas reparieren?
Was Ihre Datenbank tut aussehen wie? Was befindet sich unter "https://ksharet-d6a24.firebaseio.com/message"? Fehler beim Zurücksetzen ist ein Fehler von der Jackson-Bibliothek, die Firebase für die Objektserialisierung und -deserialisierung verwendet. Weitere Informationen dazu finden Sie hier: http://stackoverflow.com/questions/32108969/why-do-i-get-failed-to-bounce-to-type-when-i-turn-json-from-firebase-into -java rq = 1 – Lyla
@Lyla meine Datenbank eine Echtzeit-Datenbank ist, das ist die json der Datenbank: ‚{ "message": { "-KUTSl1Z-UPLM0lst2OL": { "message":„שלום וברוכים הבאים "Titleאפםם" } } } ' ' 'title ":" ששםם " –