【发布时间】:2015-07-15 01:03:02
【问题描述】:
我正在使用适用于 Android 的 Realm,我想知道如何获取当前架构版本。在他们的迁移示例中,版本递增然后保存,但我需要在进行任何升级之前检查版本。 谢谢。
【问题讨论】:
-
您这样做的目的是什么?我可以想象,也许您只是想完全放弃某个低于某个特定版本的 Realm 并创建一个全新的 Realm。在这种情况下,迁移太复杂了。我想到的最简单的方法就是使用一个新名称的领域,然后尝试删除旧名称。无需担心架构版本。
-
我尝试通过手动设置架构值高于当前值来调试升级过程,但有时我不知道哪个值是当前值
-
来自
Migration.execute(Realm realm, long version)的version参数是当前Realm 的版本。这会有帮助吗? -
我知道,但那是迁移已经触发的时候,如果我事先知道,我可以决定设置哪个模式值(以控制它是否应该迁移)
-
Realm 目前没有获取模式版本的 API。也许讨厌的方式是您可以使用
Migration.execute中的版本抛出自定义异常并捕获它。为什么需要决定设置哪个模式值?为什么不直接更新到最新版本?