如何克服 android 应用程序上的 RealmMigrationNeededException 错误

How to overcome RealmMigrationNeededException error on android app

当我点击 android 应用程序的启动器图标时,它立即崩溃。我检查了 logcat 错误,它显示由于以下错误需要迁移:- 属性 'PrintJobData.jobPageCount' 已经 removed.I 使用 Realm 数据库并且语言是 kotlin。如何克服这个问题。

私有 val realmConfig:RealmConfiguration = RealmConfiguration.Builder()

        .name("database.realm")

// .deleteRealmIfMigrationNeeded()

        .schemaVersion(1)

        .build()


private var realm: Realm = Realm.getInstance(realmConfig)

如果需要迁移,您可以删除您的领域:

.deleteRealmIfMigrationNeeded()

或者您可以为您的领域编写自定义迁移,并且您对数据库所做的每个更改都必须在迁移中处理。 注意:请记住,在更改数据库后,您必须更新 schemaVersion 并将自定义迁移添加到 RealmConfiguration.Builder(),如下所示:

val config = RealmConfiguration.Builder()
        .name("yourRealmName.realm")
        .schemaVersion(2)
        .migration(CustomMigration())
        .build()

你可以从this and the original document

学习如何编写迁移