我和许多开发人员一样,最近收到了Apple发来的一封电子邮件,声称我们应该将文档目录中的数据移到另一个文件夹中,以便更加简化备份到iCloud.
在最近的测试中,似乎[您的应用]在其Documents文件夹中存储了大量数据.
由于每天通过Wi-Fi为每个用户的iOS设备执行iCloud备份,因此通过最小化应用程序存储的数据量来确保最佳用户体验非常重要.
instapaper成名的Marco Arment对这个问题有很好的理解,即存储可下载文件的推荐位置在/ Library/Caches中.但问题是,只要操作系统确定设备的存储空间不足,就可以"清除"/ tmp和/ Caches.如果您的应用已清除,则您的应用下载并由您的用户存储的数据将会消失.当然,用户会责怪你而不是苹果.
该怎么办?
我的应用程序可下载应用内购买.当下载内容时,我现在将其存储在文档目录中.但我知道Apple是挑剔的,可能会拒绝我的应用程序,因为可以恢复的内容不应存储在文档目录中,这意味着,将保存到icloud.
我想过使用临时或缓存目录,但是当iOS需要空间时,这些目录都可以清空.
我应该在哪里保存?
我读过我可以使用 ios 5.1 及更高版本标记具有“不备份”属性的文件夹
据我了解,在这种情况下,目录的所有内容都将从备份中排除。
在我的应用程序中,我们需要从备份中排除 Documents 目录中的所有文件(可以在应用程序执行期间从 Documents 添加或删除文件)。我需要将我们的文件存储在 Documents 目录中。
我可以用“不备份属性”标记文档目录吗?
苹果允许这样做吗?
这会成为拒绝我们应用程序的原因吗?