今天,在研究如何/在哪里从我正在处理的项目中的 URL 下载和保存音频/图像文件时,我偶然发现如果我们将大型音频/图像文件保存在 iOS 的文档目录中,可能会导致应用程序被拒绝。
此处的问题与此处发布的“iOS 数据存储指南”有关https://developer.apple.com/icloud/documentation/data-storage/ -“仅文档和其他数据是用户生成的,或者不能以其他方式生成的数据由您的应用程序重新创建的文件应存储在“/Documents”目录中,并将由 iCloud 自动备份。”
在进一步阅读中,我发现许多人的应用程序被拒绝是因为在文档目录中存储了太多数据(因为用户在他的 iCloud 帐户中的 5GB 容量有限)并且用户设备上所有应用程序的文档目录是自动备份到 iCloud。
为开发人员提供的一个选项是将数据存储在“/Library/Caches”目录中。但是,只要操作系统内存不足,就可以删除缓存目录中的数据,并且不能保证数据将始终存在,这不是我们项目可接受的解决方案,因为我们不能指望我们的应用程序的用户群下载更多大文件不止一次。
我根据此链接http://developer.apple.com/library/ios/#qa/qa1719/_index.html#//apple_ref/doc/uid/DTS40011342找到的解决方案是专门标记您存储的文件不备份的文档目录和过程在其中描述。但是,它仅适用于 iOS 5.0.1 及以后的版本。在 iOS 5.0 及更低版本上无法从备份中排除数据。
所以,我的问题是:'由于我正在处理的项目有足够多的图像/音频要存储并且重新下载它们不是一种选择,建议只支持在 iOS 5.0 上安装。 1 及以上因为上述问题或保持与 iOS 4.3 的向后兼容性并调查其他方式来存储数据而不会拒绝应用程序?如果我们采用前一种方法,我们大约会失去多少百分比的用户?有相同的统计数据吗?
请让我知道您对此的看法