【发布时间】:2018-05-29 20:50:29
【问题描述】:
目前我正在将我的应用程序数据(媒体)保存到 CacheDirectory 即
/var/mobile/Applications/BEAFC76C-C450-4A3A-9765-A0385A9580F3/Library/Caches
一切都很顺利。但最近我收到一个错误报告,应用程序数据已被删除。当我搜索它时,我得到了这个Apple Doc。据此,DocumentsDirectory 应该是存储用户/应用程序数据的理想场所。
将用户数据放在 /Documents/ 中。用户数据是任何 您的应用程序无法重新创建的数据,例如用户文档和 其他用户生成的内容。
并且不应该使用缓存来存储应用程序无法复制的用户数据。
将数据缓存文件放在 /Library/Caches 目录。您应该放在此目录中的文件示例包括 (但不限于)数据库缓存文件和可下载的 内容,例如杂志、报纸和地图应用程序使用的内容。您的 应用程序应该能够优雅地处理缓存数据的情况 被系统删除以释放磁盘空间。
存放它的理想位置应该是什么。
编辑:
我有一个应用程序允许用户在应用程序中存储视频和照片。为此,我使用了 CacheDirectory。但是我收到了数据(视频/照片)被删除的错误报告。我得出的结论是设备本身正在删除数据以提供空间。
其次,我也想给 iTunes 分享功能。所以只有特定的文件必须存储在 DocumentsDirectory 中。有些文件永远不能公开,有些文件必须共享。存储文件的理想方式应该是什么。
【问题讨论】:
-
我不确定你在问什么。您链接的文档提供了有关应将哪种文件存储在何处的指导。如果您对您的数据适合什么有具体问题,您需要向我们提供一些有关您存储的内容的信息。
-
@JesseRusak 请查看编辑。
-
您的答案在您自己的问题中。 “将用户数据放在 /Documents/ 中”......我不确定你还想要什么。用户的视频和照片是用户数据。
-
Caches 目录用于存放操作系统可以在需要时删除的内容,以恢复空间。您应该只将它用于您可以以某种方式重新获得的数据。例如,已下载的图像可以(自动,无需用户干预)在需要时重新下载。
-
(您似乎掌握了所有信息,但您不相信它。承认您搞砸了并继续前进。)
标签: ios iphone ipad nsdocumentdirectory nscache