Markus B.
- Forum-Beiträge: 636
25.06.2011, 00:03:24 via Website
25.06.2011 00:03:24 via Website
Hi,
ich stehe gerade einfach vor eine Wand und komme nicht weiter...
Was möchte ich machen:
Ich möchte ein Objekt ( in diesem Fall handelt es sich um ein Singleton) in meinen Activities (also im GUI Thread) und in einem Remote Service (also ein neuer Thread) nutzten.
Hole ich mir also in einer Activity ein Objekt aus dem Singelton und dann im remote Service ebenfalls erhalte ich zwei unterschiedliche Instanzen. Liegt wohl daran wie Android den GUI Thread und den remote Service verwaltet. Es werden dort wohl zwei Dalvik Vms instanziiert. Somit kann das Singleton an dieser Stelle nicht funktionieren.
Nimmt man sich nun aber SharedPreferences als Vorbild, kann ich mir über den Context, sowohl in den Actitvites und dem remote Service das entsprechende Objekt geben lassen. Nur habe ich beim API stöbern keine Technik gefunden selber Objekte in den Context zu schieben.
Folgendes Lösungen kommen nicht in Frage:
- Das Objekt zu serialisieren und dann immer wieder einlesen.
- Das Objekt in SharedPreferences zu schreiben und somit diese Technik zu missbrauchen.
- Das Objekte an den remote Service zu übergeben, da so die Änderungen am dem Objekt nicht im Service gestehen und somit das Singleton Pattern unnütz wäre.
Hat irgendjemand eine Idee ? Ich wäre für jeden Strohhalm dankbar, egal wie groß diese auch sein Mag
Gruß,
Markus
ich stehe gerade einfach vor eine Wand und komme nicht weiter...
Was möchte ich machen:
Ich möchte ein Objekt ( in diesem Fall handelt es sich um ein Singleton) in meinen Activities (also im GUI Thread) und in einem Remote Service (also ein neuer Thread) nutzten.
Hole ich mir also in einer Activity ein Objekt aus dem Singelton und dann im remote Service ebenfalls erhalte ich zwei unterschiedliche Instanzen. Liegt wohl daran wie Android den GUI Thread und den remote Service verwaltet. Es werden dort wohl zwei Dalvik Vms instanziiert. Somit kann das Singleton an dieser Stelle nicht funktionieren.
Nimmt man sich nun aber SharedPreferences als Vorbild, kann ich mir über den Context, sowohl in den Actitvites und dem remote Service das entsprechende Objekt geben lassen. Nur habe ich beim API stöbern keine Technik gefunden selber Objekte in den Context zu schieben.
Folgendes Lösungen kommen nicht in Frage:
- Das Objekt zu serialisieren und dann immer wieder einlesen.
- Das Objekt in SharedPreferences zu schreiben und somit diese Technik zu missbrauchen.
- Das Objekte an den remote Service zu übergeben, da so die Änderungen am dem Objekt nicht im Service gestehen und somit das Singleton Pattern unnütz wäre.
Hat irgendjemand eine Idee ? Ich wäre für jeden Strohhalm dankbar, egal wie groß diese auch sein Mag
Gruß,
Markus
— geändert am 25.06.2011, 02:00:33
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.