我们的应用程序最近因违反iOS Data Storage Guidelines
在 iCloud 上备份文件而被拒绝。
我必须用do not back up
属性标记数据。
我将所有重要数据存储在 SQLite 数据库中,并将我的用户首选项存储在 UserDefaults.plist 中。我是否必须将我的 database.sqlite 文件标记为do no back up
?
我问审阅者我是否要iCloud
在我的 AppID 中禁用它会对我的情况有所帮助,而回复是神秘的,并没有真正给我一个是或否的答案。
我的应用程序中的任何内容都不需要备份,我可以只禁用iCloud
我的 AppID 中的支持,而不必担心将文件标记为do not back up
??
以下是审稿人的回复:
2.23
我们还发现您的应用没有遵循 App Store 审核指南所要求的 iOS 数据存储指南。
特别是,我们发现在启动和/或内容下载时,您的应用程序存储 4 MB。要检查您的应用存储了多少数据:
- 安装并启动您的应用
- 转到设置 > iCloud > 存储和备份 > 管理存储
- 如有必要,点击“显示所有应用”
- 检查您应用的存储空间
iOS 数据存储指南指出,只有用户使用您的应用程序创建的内容,例如文档、新文件、编辑等,才应由 iCloud 备份。
您的应用程序使用的临时文件应仅存储在 /tmp 目录中;请记住在用户退出应用程序时删除存储在此位置的文件。
可以重新创建但必须保留以使您的应用程序正常运行的数据 - 或者因为客户希望它可以离线使用 - 应该使用“不备份”属性进行标记。对于 NSURL 对象,添加 NSURLIsExcludedFromBackupKey 属性以防止相应文件被备份。对于 CFURLRef 对象,使用相应的 kCFURLIsExcludedFromBackupKey 属性。
有关更多信息,请参阅技术问答 1719:如何防止文件备份到 iCloud 和 iTunes?。
有必要修改您的应用程序以满足 iOS 数据存储指南的要求。对于离散代码级别的问题,您可能希望咨询 Apple 开发人员技术支持。请务必:
- 包括您的拒绝问题的完整详细信息
- 准备任何符号化的崩溃日志、屏幕截图和步骤,以便在 DTS 工程师跟进时重现问题。