Stavo cercando di evitare di creare e gestire oggetti Realm, nella mia applicazione Android, per ogni frammento. Sto pensando che ThreadLocalVariable potrebbe essere un buon inizio.Come utilizzare correttamente Realm
public class RealmInstanceGenerator extends ThreadLocal<Realm> {
public Realm getRealmForMyThread(Context context) {
if(get() == null && context != null)
super.set(Realm.getInstance(context));
return get();
}
public void setRealmForCurrentThread(Context context) {
if(context != null)
super.set(Realm.getInstance(context));
}
@Override
protected Realm initialValue() {
return null;
}
@Override
public void remove() {
if(get() != null) get().close();
super.remove();
}
}
vorrei solo creare un oggetto finale statica di RealmInstanceGenerator nei miei utils classe Singleton e chiamare setRealmForCurrentThread nel mio MainActivity. Allora chiamerò remove quando la mia attività muore. Per ogni nuovo thread verrà generato automaticamente un nuovo oggetto Realm. È una buona strategia?
ho scritto [questa guida per Realm 1.2.0] (https://medium.com/@Zhuinden/basics-of-realm-a-guide-to-using-realm-1-2-0-634471c0fe8f#.sltph3ynl) – EpicPandaForce