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
Post a Comment