我对这些版本感到困惑。
在文件中:
newVersion - 执行迁移后Realm的架构版本。
schemaVersion(long schemaVersion) - 设置领域的架构版本。
schemaVersion是newVersion吗?为什么我们在迁移时需要++ oldVersion?
答案 0 :(得分:3)
oldVersion是开始迁移时Realm文件的版本。新版本是完成迁移后的预期版本,等于您在schemaVersion()
中提供的数字。
执行oldVersion++
的原因在于,无论您从哪个版本升级,这都是执行逐步迁移的简便方法。代码将自动跳过不需要的步骤。
您也可以在此处详细了解迁移:https://realm.io/docs/java/latest/#migrations