我在我的一个带有Core Data框架的应用程序中使用基于sql的数据库。我没有为持久存储启用任何文件保护(使用NSFileProtectionKey)。但是我无法在Library中的'Caches'文件夹下的目录中打开我的数据库文件存储。
你有没遇到过这样的问题?下面是我尝试打开sql文件时得到的图像。但是,我在该文件夹中可以看到与iOS 6不同的是,有两个附加文件(-shm和-wal)与sql存储文件的名称相同。
有没有人可以帮我找到打开文件的解决方案。
答案 0 :(得分:1)
-shm
和-wal
是使用预写日志记录创建的日记文件。您需要所有3个文件才能获得完整的数据库。我没有看到因不遵守这条规则而错误地触发加密错误,但这似乎无从谈起。
请参阅https://developer.apple.com/library/mac/qa/qa1809/_index.html和http://asciiwwdc.com/2013/sessions/207。