listadapter - Closing Realm instance in RealmBaseAdapter -


in realm's java documentation here mentions best practice to:

... open realm instance in activities , fragments , close again when activity or fragment destroyed.

however happens if want like

public class helperlistadapter extends realmbaseadapter<helper> implements listadapter {     //...     realm realm = realm.getdefaultinstance();     //...     @override     public view getview(int position, view convertview, viewgroup parent) {         // ...     } } 

then should close() realm instance in case?

the docs linked quite in order maintain lifecycle, should create realm instance on ui thread bound activity lifecycle.

public class myactivity extends activity {     private realm realm;      @override     protected void oncreate(bundle savedinstancestate) {         super.oncreate(savedinstancestate);         realm = realm.getdefaultinstance();     }      @override     protected void ondestroy() {         super.ondestroy();         realm.close();     } } 

even better - use retained fragment hold realm instance within activity , use constructor , `ondestroy().

public class realmfragment extends fragment {     realm realm;      public realmfragment() {          setretaininstance(true);          realm = realm.getdefaultinstance();     }      @override     public void ondestroy() {          super.ondestroy();          realm.close();     } } 

Comments