我应该将sqlite数据库文件写入Documents目录或Library/Caches吗?

Sha*_*anu 5 iphone data-storage ios5 xcode4.2

我已经阅读了Apple的数据存储指南,我真的很困惑,我应该保留我在我的应用程序中创建的sqlite数据库文件.即使应用程序处于Offfline模式,我也想从sqlite文件中读取.我读到创建的这些文件应保存在Library/caches中,并设置"不备份"标志.请建议我做同样的正确方法.

Mic*_*ann 5

答案取决于数据库文件的创建方式:

根据"数据存储指南"页面:

  1. 只有用户生成的文档和其他数据,或者应用程序无法重新创建的数据应存储在/ Documents目录中,并由iCloud自动备份.

  2. 可以再次下载或重新生成的数据应存储在/ Library/Caches目录中.您应该放在Caches目录中的文件示例包括数据库缓存文件和可下载内容,例如杂志,报纸和地图应用程序使用的内容.

这对我来说似乎相对清楚:如果您的应用程序以编程方式创建某些内容或生成您想要保存的数据,请将其放在"Caches"文件夹中.如果它是客户自己生成的独特东西(通过键入键盘或他们手动干预和做过的事情),请将其放入"文档"中.

"不备份"意味着文件永远不会被发送到iCloud,如果它们丢失,则必须从头开始重新创建(或重新安装).