将Realm与App部分捆绑在一起

时间:2016-06-23 20:42:35

标签: swift cocoa realm

我正在尝试将realm文件与我的应用捆绑在一起。我按照步骤1-5,但我不清楚第6步。它说将文件复制回文档文件夹,特别是如果它将由用户编辑。

假设,复制语句进入AppDelegate(类似于示例迁移代码中的方式),文件被复制,下次应用程序启动时会发生什么?它会再次复制文件,并覆盖它吗?我错过了什么吗?

我是否需要在发送应用程序之前运行一次,然后从应用程序代理中删除代码?

编辑:这个问题是关于realm-swift

2 个答案:

答案 0 :(得分:3)

如果您将Realm文件与您的应用程序捆绑在一起,它将存储在Resources目录中不可写入的应用程序包中(因为代码签名)。因此,如果您希望用户能够更改此数据,则必须将此文件复制到具有写访问权限的某个目录。 Application的Documents目录似乎是一个不错的选择,它也是默认make的默认目录。

如果它是您的应用的初始数据,并且您不想在每次启动应用时覆盖它,您只需检查目标文件是否存在,而不是在这种情况下复制您的初始数据库。

你可以这样做:

make all

答案 1 :(得分:0)

添加上述答案。看起来当前检查realm文件的正确版本是:defaultURL.checkResourceIsReachable()