可以将下载的图像/文件添加到我的应用包中吗?

Lil*_*oke 2 iphone xcode objective-c ipad ios

我有一个应用程序,允许我下载字符(图像),声音等.当用户选择下载哪个字符时,我可以将其存储在我的应用程序包中的目录中?如果没有,哪里是存储我的内容(数据)的最佳位置?我正在考虑文档目录,但后来我看到Apple现在想要将数据存储在caches目录中.

谢谢您的帮助.

alb*_*amg 5

我可以将它存储在我的App Bundle中的目录中吗?

不,您无法修改应用包.

如果没有,哪里是存储我的内容(数据)的最佳位置?

  • 如果您的应用必须支持iOS 5.0或更早版本,则需要将应用数据存储在Caches目录中.但是,请记住,在低空间情况下可以删除文件,因此如果您的应用数据被删除,您的应用将需要优雅地降级.

  • 从iOS 5.0.1开始,您可以将数据文件存储在文档目录中,并将其标记为"不备份".通过标记文件,您的应用程序符合指南,即应用程序负责确保仅将用户数据而非应用程序数据备份到iCloud和iTunes, 并避免Apple可能拒绝.在这种情况下,在低空间情况下不会删除文件.

  • 从iOS 5.1开始,您可以将数据文件存储在文档目录中,并使用NSURLIsExcludedFromBackupKeykCFURLIsExcludedFromBackupKey文件属性从备份中排除文件.这些API中的任何一个都优于将其标记为"不备份".在这种情况下,您的应用程序符合App Store指南,并且在低空间情况下不会删除这些文件.