应用程序被拒绝用于iCloud备份标记

我的应用程序有几个应用程序内购买下载video内容到/ Documents文件夹。 我最近提交了一个更新的应用程序,并被拒绝,因为我没有标记video文件不备份到iCloud。 我成功地执行了标记,但我仍然对苹果公司文档中的这个陈述感到困惑:

重要新的“不备份”属性将只被iOS 5.0.1或更高版本使用。 在iOS 5.0及更早版本中,应用程序需要将其数据存储在/ Library / Caches中以避免备份。 由于此属性在旧系统上被忽略,因此您需要确保您的应用程序符合应用程序支持的所有iOS版本的iOS数据存储指南。

我的应用程序支持iOS 3.2及更高版本,因此我需要在我的代码中考虑不同版本的iOS,或者正在实现不需要备份标志足以通过App Store审批? 我真的不想放弃对早于5.0.1版本的支持。

请帮忙!

您的应用程序的正确行为是将文件放置在5.0.1之前的操作系统上的库/caching中,并将其放入5.0.1或更高版本中的“不备份”标志的文档中。 使用Library / Caches的缺点是当用户升级应用程序时文件将被擦除(所以他们最好能够重新下载它们)。 但好处是你不会用不应该备份的文件来扩展备份。

请注意,在5.0.1或更高版本中,如果您检测到文件不存在,则应在下载之前检查其5.0.1之前的位置,以防用户刚升级其操作系统。

关注区域是iOS 5.0,它支持iCloud,但不识别“不备份”属性。 在这种情况下,文档目录中的应用程序的所有数据都可能被备份到iCloud。 对于5.x以下的iOS版本:

  • iCloud备份无效。
  • “不备份”的标志是不相关的。 在编译过程中不会产生任何警告。

因此,数据可以保存在文档目录中,对于所有版本,“不备份”标志适当地添加到内容(文件/文件夹)中。 问题只针对5.0版本。