android-更新领域数据库版本

我在当前的Android项目中使用版本0.79.0的境界.现在,我想将领域版本更新为0.84.0,还想在Application类中使用RealmConfiguration来使用Realm.getDefaultInstance()而不是Realm.getInstance(context)进行领域初始化.

我实现了新的领域版本,还更改了必要的配置.但是当我运行我的应用程序时,它崩溃并显示错误信息

Realm Migration must be provided

以为我没有改变任何模型课.

谁能告诉我如何通过Android的默认配置更改领域版本,而无需进行任何迁移?如果没有迁移是不可能的,那么迁移类将是什么样?

解决方法:

您需要迁移,因为我们在0.83.0中引入了对空值的支持.您可以在此处了解有关如何迁移的更多信息:https://realm.io/news/realm-java-0.83.0/

但是您需要添加一个如下所示的迁移:

RealmMigration migration = new RealmMigration() {
    @Override
    public long execute(Realm realm, long version) {
        Table table = realm.getTable(Dog.class);
        // Needed for all Strings
        table.convertColumnToNullable(table.getColumnIndex("name"));
        return 1;
    }
};

RealmConfiguration realmConfig = new RealmConfiguration.Builder(getContext())
    .schemaVersion(1)
    .migration(migration)
    .build();
上一篇:Shiro自定义Realm实现认证和授权(五)


下一篇:SpringBoot整合Shiro多realm登录配置,另外附俩个教程