2

目前我正在将我的应用程序数据(媒体)保存到 CacheDirectory 即

/var/mobile/Applications/BEAFC76C-C450-4A3A-9765-A0385A9580F3/库/缓存

事情进展顺利。但最近我收到一个错误报告,应用程序数据已被删除。当我搜索它时,我得到了这个Apple Doc。据此,DocumentsDirectory 应该是存储用户/应用程序数据的理想场所。

将用户数据放在 /Documents/ 中。用户数据是您的应用程序无法重新创建的任何数据,例如用户文档和其他用户生成的内容。

并且不应该使用缓存来存储应用程序无法复制的用户数据。

将数据缓存文件放在 /Library/Caches 目录中。您应该放在此目录中的文件示例包括(但不限于)数据库缓存文件和可下载内容,例如杂志、报纸和地图应用程序使用的内容。您的应用程序应该能够优雅地处理系统删除缓存数据以释放磁盘空间的情况。

存放它的理想场所应该是什么。

编辑:

我有一个应用程序,允许用户在应用程序中存储视频和照片。为此,我使用了 CacheDirectory。但是我收到了数据(视频/照片)被删除的错误报告。我得出的结论是设备本身正在删除数据以提供空间。

其次我也想给iTunes分享功能。所以只有特定的文件必须存储在 DocumentsDirectory 中。有些文件永远不能公开,有些文件必须共享。什么应该是存储文件的理想方式。

4

3 回答 3

4

使用Documents( NSDocumentDirectory) 表示您希望通过 iTunes 共享的文件。

使用Application Support( NSApplicationSupportDirectory) 表示您希望对用户隐藏但仍会被操作系统备份且永不删除的文件。

于 2013-12-05T15:54:26.570 回答
2

从 iOS 5 开始,Apple 表示将所有类型的文件保存在 Documents Directory 中不再是一件好事 - 如果您这样做,您的应用肯定会被拒绝,因为该文件夹已备份到 iTunes 和 iCloud,除非另有说明。

它说我们应该将文件保存到缓存或 Tmp 目录中 - 这些不会被备份,但这不是一件好事,因为如果内存不足,这些目录中的文件可能会消失。

所以我认为最好的办法是将应用中一直需要的重要文件保存到 Documents Directory 中,并将它们标记为不备份,就像这样

于 2013-12-05T14:38:55.260 回答
1

库/应用程序支持文件夹是您应该使用的文件夹。

此目录并不总是存在,因此您可能需要创建它。您可以启用或禁用是否要使用 iTunes 备份此数据。

即使您启用文件共享,也无法访问此数据。只有您放入 Document 目录的数据才会与 iTunes 共享共享,因此您仍然可以保护您的数据并进行备份。苹果的文档

于 2013-12-05T15:53:40.230 回答