【问题标题】:Do I need to increment the Room Database version number if I only changed the DAO's, not the entities?如果我只更改 DAO 而不是实体,是否需要增加 Room Database 版本号?
【发布时间】:2020-02-11 12:06:27
【问题描述】:

我只是想知道如果您只更改了数据访问对象 (DAO),您是否真的需要增加房间数据库版本号。

所以场景是:

  1. 我已经在 Play 商店中发布了版本 x 的应用
  2. 我只更改了某些 DAO 的一部分,而没有更改实体本身
  3. 我增加了应用版本代码和名称(可能不相关)

我需要增加房间数据库版本号吗?

【问题讨论】:

  • 是否需要增加房间数据库版本号?
  • 这也是您应该能够自己测试的东西:使用您当前的版本,更改 dao 并使用新的 dao 再次运行应用程序,看看您是否遇到异常 :)
  • @md-asaduzzaman 谢谢呵呵
  • @a-local-nobody 是的,我试过了,但只是想确定一下。我在 Android 自己的文档中找不到它,所以我重新考虑了。感谢大家的快速反馈,我真的很感激!

标签: android android-sqlite android-room


【解决方案1】:

我需要增加房间数据库版本号吗?

您需要在更改架构时增加架构版本。简单地将函数添加到 DAO 不应导致架构更改。但是,您的架构可能会因您的 DAO 和实体之外的事物而改变。现在,我认为只有@DatabaseView 会在注释方面产生这种效果,而我在RoomDatabase.Builder 中看不到任何应该产生效果的东西(addMigrations() 除外,它专门用于版本号更改)。

【讨论】:

  • 非常感谢它一直困扰着我,无论我是否要增加它。我只是想验证一下,因为我的一个错误举动并且我的构建崩溃了。
猜你喜欢
  • 2017-06-21
  • 1970-01-01
  • 2017-01-27
  • 1970-01-01
  • 2023-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-05
相关资源
最近更新 更多