【发布时间】:2011-12-26 21:28:33
【问题描述】:
apple storage guidelines 的方式给我带来了更多问题,因为我从 Documents 目录维护的大部分数据(文件、数据库和某种与应用程序相关的东西)。最近我上传了一个二进制文件到应用程序商店被拒绝了,苹果向我提供了一份报告 根据这一点我将更改我的代码如下
- (NSString *)applicationDocumentsDirectory {
NSString *documentPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject];
NSURL *pathURL= [NSURL fileURLWithPath:documentPath];
[self addSkipBackupAttributeToItemAtURL:pathURL];
return documentPath;
}
- (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL
{
const char* filePath = [[URL path] 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;
}
我的问题:
1.我可以直接对文档目录使用 addSkipBackupAttributeToItemAtURL: 方法来禁止我在文档目录中的所有文件的 iCloud 备份。
2.上面提到的代码足以让我的应用在应用商店中获得批准,以防我的最后一个二进制文件由于“不备份”属性而被拒绝,因为我的文档目录中不包含“不备份”属性。
【问题讨论】:
-
我遇到了同样的问题。由于您遇到的同样问题,我的应用程序也被拒绝了。您是将文件位置更改为库路径还是尝试“不备份”?
-
我仍然处于两难境地,因为设备缓存空间不足,临时文件将被删除。我的整个应用程序依赖于文档目录。如果我使用“不备份”,它将适用于除 ios5.0 以外的所有版本。我想再考虑几天。
-
我的应用再次被拒绝。因为 iCloud。我已将文件夹目录更改为库路径,并将其标记为“不备份”。我还在库目录中存储了一些数据,但没有给它们“不要标记”。
-
嘿,你解决问题了吗?告诉我你是怎么解决的?
-
我上传了二进制文件等待重播。
标签: iphone ipad ios5 wifi icloud