我的应用因以下原因被拒绝:
您的应用未按照 App Store 审核指南的要求遵守 iOS 数据存储指南。
您的应用在启动时会将 4.0 MB 的数据备份到每个用户的 iCloud 空间。请务必为所有非用户生成或修改的数据设置“不备份”属性。要检查您的应用存储了多少数据:
- 安装并启动您的应用
- 前往“设置”>“iCloud”>“存储和备份”>“管理存储”
- 如有必要,选择“显示所有应用程序”
- 检查您应用的存储空间
iOS 数据存储指南指出,只有用户使用您的应用程序创建的内容(文档、新文件、编辑等)可以存储在 /Documents 目录中 - 并备份到 iCloud。
您的应用程序使用的临时文件应仅存储在 /tmp 目录中。请记住在用户退出应用程序时删除存储在此位置的文件。
可以重新创建但必须保留以使您的应用程序正常运行或因为客户希望它可以离线使用的数据应附加“不备份”属性。对于 NSURL 对象,添加 NSURLIsExcludedFromBackupKey 属性以防止相应文件被备份。对于 CFURLRef 对象,使用相应的 kCFURLIsExcludedFromBackupKey 属性。
据我了解,存储在 /documents 文件夹中的所有内容都将存储在 iCloud 中,并且该文件夹应仅包含用户生成的数据。现在,我已将 /documents 中的所有文件移动到缓存文件夹中。但是,当我使用设备测试应用程序时,仍有大约 28kb 发送到 iCloud(据 Organizer 称,该设备的应用程序沙箱的 /documents 文件夹中没有任何内容)。我的项目不支持 iCloud,所以当文档中没有任何内容时,我不明白正在发送什么。
有没有办法检查发送到 iCloud 的确切内容?
另外,我现在的项目针对的是 iOS 5.0。根据我在 5.0 中的理解,没有任何东西可以防止最终清除缓存文件夹。我应该只支持 >= 5.0.1 吗?