每当我像添加更多字段一样更改模型时,应用程序会因io.realm.exceptions.RealmMigrationNeededException错误而崩溃.这只能在我卸载并重新安装应用程序时解决.
有什么建议去做迁移吗?我只使用默认实例.
AZ_*_*AZ_ 16
如果丢失旧数据没有任何问题,则可以删除Realm Configuration并创建新的.
Realm realm = null;
try {
realm = Realm.getInstance(MainActivity.this);
} catch (RealmMigrationNeededException r) {
Realm.deleteRealmFile(MainActivity.this);
realm = Realm.getInstance(MainActivity.this);
}
Run Code Online (Sandbox Code Playgroud)
要么
RealmConfiguration config2 = new RealmConfiguration.Builder(this)
.name("default2")
.schemaVersion(3)
.deleteRealmIfMigrationNeeded()
.build();
realm = Realm.getInstance(config2);
Run Code Online (Sandbox Code Playgroud)
Migration如果你不想丢失数据,你必须这样做,请在这里看到这个例子.
Bro*_*oak 11
您应该能够在这里找到所需的信息:
https://realm.io/docs/java/latest/#migrations
如果在旧数据库模式下没有数据存储在磁盘上,只需将代码更改为新定义即可正常工作.但是,如果你这样做,那么Realm认为在代码中定义的内容与Realm在磁盘上看到的数据之间将存在不匹配,因此会抛出异常.
| 归档时间: |
|
| 查看次数: |
17445 次 |
| 最近记录: |