如何克服 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()
学习如何编写迁移
当我点击 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()
学习如何编写迁移