Reputation: 486
public RealmController(Context context) {
try {
this.context = context;
Realm.init(context);
PrintLog("RealmController", "RealmController", "Init realm", LOG_LEVEL_INFO);
realmInstance = Realm.getDefaultInstance();
PrintLog("RealmController", "RealmController", "Getting realm instance", LOG_LEVEL_INFO);
}
catch (Exception err) {
PrintLog("RealmController", "RealmController", "Error: " + err.getMessage(), LOG_LEVEL_ERROR);
}
}
public class SellingDataTable extends RealmObject {
public Date todaysDate;
public int sellingData;
public Date getTodaysDate() {
return todaysDate;
}
public void setTodaysDate(Date todaysDate) {
this.todaysDate = todaysDate;
}
public int getSellingData() {
return sellingData;
}
public void setSellingData(int sellingData) {
this.sellingData = sellingData;
}
}
Gonna crash.
08-09 15:24:16.044 [I2maxMain] {Init} (preparing ui)
08-09 15:24:16.120 [RealmController] {RealmController} (Init realm)
08-09 15:24:16.129 [RealmController] {RealmController} (Error: The 'SellingDataTable' class is missing from the schema for this Realm.)
Upvotes: 2
Views: 3575
Reputation: 505
If you have added a new model class. You need to uninstall the app and run again. It will solve the problem.
Upvotes: 2
Reputation: 81588
If you create a Realm with a given schema on the device, then if you start modifying the schema (by adding new classes, adding new fields, removing fields, adding/removing @Index
, adding/removing @Required
, changing a type, etc.) then you either need to provide a migration (example here), or you need to specify deleteIfMigrationNeeded()
on your RealmConfiguration.
Upvotes: 4