我已经创建了一个新的swift项目,并在“使用核心数据”框中打勾。我注意到每次构建我的设备时,我的数据都已从数据库中清除。通过代码追踪我注意到xcode添加到app delegate中的核心数据的默认设置在每次运行app时都有不同的url:
$rowcsv['reasonforabsence']
我猜这就是我的数据不断消失的原因。有没有办法防止这种情况,所以它看起来不像我的数据被清除。
答案 0 :(得分:0)
正如您所注意到的,NSDocumentDirectory
每次构建都会发生变化。但是,文档目录中的文件将被复制到" new"每次运行前的位置。所以我不认为这就是你的数据不断消失的原因。您是否尝试在这些目录中查看是否Testo.sqlite
实际存在?如果是这样,它是否包含任何数据?
旁注:
Apple建议您不要将数据库文件存储在NSDocumentDirectory
中。而是将SQLite存储设置为应用程序库:
var appDir = NSSearchPathForDirectoriesInDomains(.LibraryDirectory, .UserDomainMask, true)
为了将来参考,请参阅Apple关于不同目录的一些文档: