【问题标题】:iCloud is backing up 68 bytes of my app (a plist file), do i need to set a flag to exclude it from icloud backup?iCloud 正在备份我的应用程序的 68 字节(一个 plist 文件),我是否需要设置一个标志以将其从 icloud 备份中排除?
【发布时间】:2014-06-22 13:00:39
【问题描述】:

我的 iOS 应用程序被 App Store 拒绝,因为我将一些图像和 SQLite 数据库存储到 Documents 目录中并且没有为它们设置标志(不包括同步到 iCloud),这违反了 iOS 数据存储指南。

现在我已将所有内容(例如资产和数据库 sqlite 数据)移动到库/应​​用程序支持/离线数据中,并使用这个很棒的 StandardPath 库将所有​​内容标记为排除到 iCloud 中

现在当我运行应用程序时,我仍然发现 68 字节的数据正在备份到 iCloud,我发现它是位于 Library/Preferences/au.com.xxxx.plist 中的 plist 文件(因为它正好是 68 字节)

我的问题是,我是否也应该为该 plist 目录设置一个标志?还是没关系?因为我不想再次被拒绝

这里有一个similar post,OP 设法将 0kb 备份到 icloud。

我们发现您的应用未遵循 App Store 审核指南所要求的 iOS 数据存储指南。

特别是,我们发现在发布和/或内容下载时,您的 应用商店 7.1 MB。要检查您的应用存储了多少数据:

  • 安装并启动您的应用
  • 转到设置> iCloud > 存储和备份> 管理存储
  • 如有必要,请点按“显示所有应用”
  • 检查应用的存储空间

iOS 数据存储指南指出,只有 用户使用您的应用创建,例如文档、新文件、编辑等, 应由 iCloud 备份。

您的应用使用的临时文件应仅存储在 /tmp 目录;请记住删除存储在此位置的文件 当用户退出应用时。

可以重新创建但必须保留才能正常运行的数据 您的应用 - 或者因为客户希望它可以离线使用 使用 - 应标有“不备份”属性。对于 NSURL 对象,添加 NSURLIsExcludedFromBackupKey 属性以防止 相应的文件被备份。对于 CFURLRef 对象,使用 对应的 kCFURLIsExcludedFromBackupKey 属性。

有关更多信息,请参阅技术问答 1719:如何防止 文件从被备份到 iCloud 和 iTunes?。

【问题讨论】:

  • App Store 审阅者的方式很神秘,但单个小于 1 K 的 plist 文件可能不是问题,特别是如果这是用户实际想要备份的用户偏好。
  • 您好 Thilo,感谢您的评论。我打开了 plist 文件,发现它是我为用户(NSUserDefaults)设置的一个标志,用于记住从服务器下载已完成。所以你是对的,这实际上是用户想要备份的用户偏好。在我重新提交后,我的应用也很快获得了批准。

标签: ios objective-c icloud appstore-approval


【解决方案1】:

如果您不想备份到 iCloud,请将此方法添加到您的应用委托中。

- (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL
{
    NSArray *paths = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);
    NSString *documentsDirectoryPath = [paths objectAtIndex:0];

    const char* filePath = [documentsDirectoryPath fileSystemRepresentation];
    const char* attrName = "com.apple.MobileBackup";
    u_int8_t attrValue = 1;
    int result = setxattr(filePath, attrName, &attrValue, sizeof(attrValue), 0, 0);
    return result == 0;
}

【讨论】:

    猜你喜欢
    • 2012-08-19
    • 2014-10-20
    • 1970-01-01
    • 1970-01-01
    • 2012-04-02
    • 2011-12-26
    • 1970-01-01
    • 1970-01-01
    • 2015-07-30
    相关资源
    最近更新 更多