【问题标题】:iOS app rejected: Apps must follow the iOS Data Storage Guidelines or they will be rejectediOS 应用被拒绝:应用必须遵循 iOS 数据存储指南,否则将被拒绝
【发布时间】:2016-08-10 00:50:27
【问题描述】:

我的申请第二次被拒绝

当我的应用第第一次被拒绝时,我首先检查了所有这些链接以及更多内容:

然后,我添加了一个函数,将我的所有/Documents 文件标记为“不备份”属性NSURLIsExcludedFromBackupKey。但是我的申请又被拒绝了。这是我的代码:

func excludeUrls(path: String) {
    let urlToExclude = NSURL.fileURLWithPath(path)
    do {
        try urlToExclude.setResourceValue(NSNumber(bool: true), forKey: NSURLIsExcludedFromBackupKey)
        print("\(path) excluded.")
    } catch {
        print("failed to set resource value")
    }
}

更多信息:

  • 我在Supporting Files 中嵌入了大约 320 张静态照片,这些图片没有备份。
  • 我使用 Google/SignInGoogle/CloudMessagingAlamofireSQLite.swift 豆荚
  • 我有 1 个 sqlite 数据库,我保存在 /Library/Cache 文件夹中,当然没有备份。
  • 当我检查我的应用程序的 iCloud 存储空间时:

    转到设置 > iCloud > 存储和备份 > 管理存储

我发现我的应用存储 578 KB

【问题讨论】:

  • 这里的第一步是联系 App Review 并询问他们的具体情况。几年前,我遇到过数据存储被拒绝的问题,最终 App 审查打电话给我解决它。使用不备份标记我的文件是解决方案的一部分,但您还需要确保 App Review 对您的数据有相同的理解。
  • 我已经提出上诉了。并且团队没有给我更多细节,这是他们的回答:应用审查委员会评估了你的应用,并确定原始拒绝反馈是有效的。您的应用程序不符合: 2.23:应用程序必须遵循 iOS 数据存储指南,否则将被拒绝 该应用程序在启动时会将 6.89 MB 备份到用户的 iCloud。只有用户生成的内容应该存储在 iCloud 中;备份非用户生成的内容(例如启动时生成的内容)是不合适的。所有其他数据都应标有“不备份”属性。

标签: ios iphone xcode swift icloud


【解决方案1】:

根据您发布的评论,Apple 声称您的应用在启动时实际上备份了大约 6 兆字节的数据。

这是关键。尝试重现并隔离该行为。如果一切似乎都不是这样,您也许可以使用工具和细心的眼睛在较低的水平上解决这个问题。

您唯一能做的就是让他们与您联系并与他们讨论。

【讨论】:

  • 嗯,实际上,我不备份任何东西。如何使用工具重现问题。
【解决方案2】:

希望 Apple 审核小组接受了我的申请。这是我所做的:

1 - 我将生成的数据库移至/Library/Caches

2 - 我添加了一个 ImageLoader 类来优化我在应用程序中加载和使用图像的方式,特别是有很多图像需要处理。所以,最好的办法是使用缓存:check this class

3 - 在看到我的应用程序没有在 iCloud 中存储大量 KB 之后,我做的最重要的事情是我对拒绝提出了上诉,并提供了很多描述和细节,甚至还有一些屏幕截图。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-05-06
    • 2012-12-02
    • 2012-06-27
    • 2014-04-03
    • 2012-09-12
    • 1970-01-01
    • 2016-09-16
    相关资源
    最近更新 更多