【发布时间】:2018-08-27 18:26:35
【问题描述】:
对于 android 的房间迁移,是否有任何方法或技术允许在由于某种奇怪的原因(不缺少架构 - 我已经知道 fallbackToDestructiveMigration 方法)迁移失败时进行回退?即核对并重新创建整个数据库?
【问题讨论】:
标签: android android-room
对于 android 的房间迁移,是否有任何方法或技术允许在由于某种奇怪的原因(不缺少架构 - 我已经知道 fallbackToDestructiveMigration 方法)迁移失败时进行回退?即核对并重新创建整个数据库?
【问题讨论】:
标签: android android-room
只需将整个内容包装在 try catch 块中即可。
来源:将其用于 2000 万以上用户的迁移。没有与迁移直接相关的崩溃?
【讨论】:
在用于生成数据库的房间构建器类中有一个fallbackToDestructiveMigration() 方法可用。 (Room.databaseBuilder)
该方法自行解释 :) 它会在迁移失败时删除 Room 中的数据
Room.databaseBuilder(getApplicationContext(), MyDatabase.class, "database-name")
.fallbackToDestructiveMigration()
.build();
【讨论】:
fallbackToDestructiveMigration 仅在未找到迁移模式时触发。如果迁移因其他原因失败,我正在寻找迁移回退的解决方案。有什么存在吗?