小编典典

该领域的架构中缺少该类

java

项目设定

  • Android Studio 2.3.3
  • 领域3.5.0

资源

RealmController.java

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);
    }
}

SellingData.java

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;
    }
}

预期行为

  • 获取领域默认实例。

实际行为

会崩溃。

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.)

阅读 207

收藏
2020-11-26

共1个答案

小编典典

如果您在设备上使用给定的架构创建一个Realm,则如果您开始修改架构(通过添加新类,添加新字段,删除字段,添加/删除@Index,添加/删除@Required,更改类型等),则您需要提供迁移(此处为示例),或者需要deleteIfMigrationNeeded()在RealmConfiguration
上指定。

2020-11-26