Right way of doing Realm Migration Android -


we use realm our app. our app has been beta released. want add field 1 of our realm objects. got write realmmigration , wrote 1 too. question here how apply realm migration app. use realm.getinstance() realm instance whenever want something. remember, realm.getinstance() being used in entire app everytime, want access realm database.

so, bit queried on how apply migration? leads can helpful. thanks.

my realmmigration follows.

public class realmmigrationclass implements realmmigration {     @override     public void migrate(dynamicrealm realm, long oldversion, long newversion) {         if(oldversion == 0) {             realmschema sessionschema = realm.getschema();              if(oldversion == 0) {                 realmobjectschema sessionobjschema = sessionschema.get("session");                 sessionobjschema.addfield("issessionrecordinguploading", boolean.class, fieldattribute.required)                         .transform(new realmobjectschema.function() {                             @override                             public void apply(dynamicrealmobject obj) {                                 obj.set("issessionrecordinguploading", false);                             }                         });                   sessionobjschema.setnullable("issessionrecordinguploading",false);                 oldversion++;             }          }     }  }  public class session extends realmobject {      @primarykey     private string id;     @required     private date date;     private double latitude;     private double longitude;     private string location;     private string note;     private string appversion;     private string apptype;     private string devicemodel;     private heartrecording heart;     private temperaturerecording temperature;     private lungsrecording lungs;     @notnull     private boolean issessionrecordinguploading;     private boolean sessioninfouploaded;     private boolean lungsrecordinguploaded;     private boolean heartrecordinguploaded;  } 

removed getter , setters realmobject cut short question. exception occurred when try reinstall app without uninstalling previous one. please advice.

it describe here: https://realm.io/docs/java/latest/#migrations

but in essence, bump schema version , set configuration this:

realmconfiguration config = new realmconfiguration.builder(context)     .schemaversion(2) // must bumped when schema changes     .migration(new mymigration()) // migration run     .build();  realm.setdefaultconfiguration(config);  // automatically trigger migration if needed realm realm = realm.getdefaultinstance(); 

Comments

Popular posts from this blog

java - Run spring boot application error: Cannot instantiate interface org.springframework.context.ApplicationListener -

reactjs - React router and this.props.children - how to pass state to this.props.children -

Excel VBA "Microsoft Windows Common Controls 6.0 (SP6)" Location Changes -