Ich versuche, mein Benutzerobjekt als Singleton zu speichern mit Dolch 2.Dagger 2 reinit Singletons
@Provides
@Named("me")
@Singleton
User provideUser(PrefsUtil prefsUtil, UserDao userDao) {
int id = prefsUtil.getFromPrefs("me", 0);
if (id == 0){
return new User();
}
try {
return userDao.queryForId(id);
} catch (SQLException e) {
return new User();
}
}
Es funktioniert gut und spritzt meine Klassen mit Benutzerobjekt.
Nach dem Anmelden und Abrufen des Benutzers vom Server und Speichern an der Stelle, an der die obige Methode sie abruft, wird sie jedoch nicht wirksam, da es sich um ein Singleton handelt. Es wird mir das Null-Benutzerobjekt zur Verfügung stellen. Damit es Effekt Anwendung beenden müssen nehmen und es wieder öffnen ...
Die Frage ist, wie das Benutzerobjekt mit @Name („me“) nach den eigentlichen Daten kommentierte aktualisieren/neu initialisiert wird, so dass es geändert spritzt meine anderen Klassen mit dem aktuellen Benutzerobjekt?
Sie müssen das Modul zurücksetzen und erneut initialisieren. –