gpt4 book ai didi

安卓 Realm : Restoring realm DB from backup file

转载 作者:行者123 更新时间:2023-11-29 19:42:42 24 4
gpt4 key购买 nike

我正在使用 realm 开发一个笔记应用程序。我想添加备份和恢复功能。所以我一直在实现这些功能,如 this page 中介绍的那样.这是用户场景。

  1. 当用户点击备份按钮时,将 default.realm 备份到 temp.realm
  2. 然后用户点击恢复按钮,将 default.reaml 替换为 temp.realm。
  3. 重新加载数据并显示新数据(替换 default.realm 文件)。

如果我重新启动我的应用程序,它运行良好。但我想立即刷新新数据。如果我没有重新启动我的应用程序,它会很奇怪。所以我的问题是如何重新加载恢复的 Realm 数据库,以便在不重新启动应用程序的情况下显示恢复的数据。

最佳答案

非常重要的是,在将temp.realm 复制到default.realm 之前,所有打开的Realm 实例都引用旧的default.realm 需要关闭。由于这些实例仍然持有一个文件描述符,并且复制后新打开的 Realm 实例将持有一个不同的文件描述符,并且 Realm 仍然认为它们是同一个 Realm,因为路径完全相同。这是 Realm 无法处理的情况,并且可能会发生一些奇怪的事情。

您可以先调用Realm.deleteRealm()删除旧的default.realm。如果打开要删除的 Realm 文件有任何其他 Realm 实例,则该 API 将抛出。

关于安卓 Realm : Restoring realm DB from backup file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38365746/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com