- Forum-Beiträge: 107
15.10.2014, 22:15:50 via Website
15.10.2014 22:15:50 via Website
Hallo,
ich habe folgendes Problem:
Meine App besteht aus einer ItemActivity die zwei Fragmente ViewFragment und EditFragment besitzen. Meine Datenbank Klasse ist ItemsDataSource. Damit ich nicht jedes mal die DataSource neu initialisieren muss übergebe ich die sie mit einem Bundle und hol sie mir in den Fragments wieder. Mein Code schaut vereinfach so aus.
ItemsDataSource
...
class ItemsDataSource implements Serializable{
SQLiteDatabase db;
....
ItemAcitivty
...
ItemsDataSource ds = new ItemsDataSource();
bundle.putSerializable("keyDs",ds);
....
ViewFragment
...
ItemsDataSource ds;;
....
ds = getIntent().getExtra().getSerializable("keyDs");
Beim EditFragment verhält es sich genau so wie beim ViewFragment
Die Erste Fehlermeldung sagt mir das ich ItemsDataSource nicht serialisieren kann, die zweite dass es daran liegt dass SQLiteDatabase, was ja eine Variable in ItemsDataSource ist, nicht serializierbar ist. Ich habe auch schon dass Schlüsselwort "transient" probiert, hat aber die selbe Fehlermeldung gegeben.
Das Problem besteht erst seit heute, bisher ging das wunderbar. Was kann ich tun um das Problem zu lösen? Parcelable zu verwenden hab ich auch schon versucht, allerdings muss ich ja mit out.writeInt() bzw out.writeString(), usw angeben welche Variablen ich serialisieren will, aber da gibt es keine methode out.writeObject(), so dass ich die Datenbank mit serialisier.
Lg Dani
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.