【发布时间】:2015-05-01 23:44:40
【问题描述】:
这是来自 Apple 关于拒绝的消息:
2.23 - 应用程序必须遵循 iOS 数据存储指南,否则将被拒绝 2.23 详情
在启动和下载内容时,您的应用会存储 6.5 MB,这不会 遵守 iOS 数据存储指南。
接下来的步骤
请确认只有用户使用您创建的内容 应用程序,例如文档、新文件、编辑等,由 iCloud 备份为 iOS 数据存储指南要求。此外,检查任何 您的应用程序使用的临时文件仅存储在 /tmp 目录;请记住删除或删除存储在 当确定不再需要它们时,此位置。
可以重新创建但必须保留才能正常运行的数据 您的应用 - 或者因为用户希望它可以离线使用 - 应标有“不备份”属性。对于 NSURL 对象,添加 NSURLIsExcludedFromBackupKey 属性以防止 相应的文件被备份。对于 CFURLRef 对象,使用 对应的 kCRUFLIsExcludedFromBackupKey 属性。
我检查了我的应用程序的设备和模拟器数据文件。我发现如果应用程序使用了一段时间,它的总应用程序数据在启动时可以存储 5-6 MB。但是我卸载并重新安装了应用程序并再次检查,我在应用程序启动时看到 ~3MB 数据存储。
我没有存储任何 Core Data 数据库或任何其他数据库文件。但我已经意识到 Google Analytics 和 Google Tag Manager 在这条路径上存储了一些 sqlite 数据:“AppData/Library”。我的意思是它不存储在此路径上:“AppData/Library/Caches”。 iOS 数据存储指南有什么不同吗?
顺便说一下,iCloud 应用程序已禁用。
我还使用 SDWebImage 下载图像,它在启动时存储了近 3 MB 的图像,并将图像数据存储在此路径上:“AppData/Library/Caches”
您知道我应该如何处理这个问题吗?
【问题讨论】:
-
我最近收到了来自 Apple 的相同信息。您是否将任何数据存储在 /Documents/ 或其他位置?
-
@orkenstein 是的,Adjust 和 ad-x(第三方营销库)在 /Documents 目录中存储了一些文件。它的意义何在?
-
根据 Apple 规则 /Documents 应该只包含用户创建的数据。否则,必须设置 NSURLIsExcludedFromBackupKey(以防止同步到 iCloud)。因此,我的建议是,您必须为 /Documents 中的每个文件手动设置 NSURLIsExcludedFromBackupKey。
-
默认情况下 iCloud 备份 - 是。检查这个:stackoverflow.com/questions/8752513/…
-
我认为这是您的应用程序大小 + /Documents、/Library/Cache 中的所有文件。等
标签: ios objective-c app-store appstore-approval