“realm migration needed”,从realm db中检索值时android中的异常

“realm migration needed”,从realm db中检索值时android中的异常,第1张

概述我在我的应用程序中使用Realm作为后端.我创建了一个名为Setting的表.我按照Realm官方网站上给出的步骤在该表中添加了值.但是当我要从该表中检索值时,我得到了异常“io.realm.exceptions.RealmMigrationNeededException:RealmMigrationmustbeprovided”ontheline:”rea

我在我的应用程序中使用Realm作为后端.我创建了一个名为Setting的表.我按照Realm官方网站上给出的步骤在该表中添加了值.
但是当我要从该表中检索值时,我得到了异常

“io.realm.exceptions.RealmMigrationNeededException: RealmMigration must be provIDed” on the line:” realm=Realm.getInstance(getApplicationContext());”.

实际上,我是android和Realm的新手,所以找麻烦来理解什么是问题.

解决方法:

EDIT: for new versions of Realm, Realm.init(Context context) is added

Realm.init(context);    RealmConfiguration config = new RealmConfiguration                                     .Builder()                                     .deleteRealmIfMigrationNeeded()                                     .build();

注意:使用此配置选项,任何架构更改都将导致数据丢失,具体为:

>添加/删除字段
>添加了一个新的RealmObject类
>删除现有的RealmObject
>添加/删除@required
>添加/删除@PrimaryKey
>添加/删除@Index

所以它主要是在应用程序处于开发阶段时推荐的.

或者按照官方文档添加迁移:

https://realm.io/docs/java/latest/#migrations

例如,

public class Migration implements RealmMigration {    @OverrIDe    public voID migrate(final DynamicRealm realm, long oldVersion, long newVersion) {        RealmSchema schema = realm.getSchema();        if (oldVersion == 0) {            RealmObjectSchema personSchema = schema.get("Person");            personSchema                .addFIEld("fullname", String.class, FIEldAttribute.required);            oldVersion++;            ...   // hash code, equals 

Realm.init(context);    RealmConfiguration config = new RealmConfiguration.Builder()                                  .migration(new Migration())                            //      .deleteRealmIfMigrationNeeded()                                 .build();

总结

以上是内存溢出为你收集整理的“realm migration needed”,从realm db中检索值时android中的异常全部内容,希望文章能够帮你解决“realm migration needed”,从realm db中检索值时android中的异常所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1103891.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存