由于 iCloud 备份限制,我的应用程序从应用程序商店被拒绝,而我没有将任何数据保存到 iCloud。请帮我。
问问题
676 次
4 回答
1
但假设您正在文档目录中保存一些数据。Apple 表示您必须将这些数据标记为未由 iCloud 备份。这可能会有所帮助。(但这也应该在您从 Apple 获得的答案中。
于 2013-05-13T11:40:36.207 回答
1
将属性应用于所有文件:)) (当然你可以排除需要)
在
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
添加这个。
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSLibraryDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
[self applyAttributes:documentsDirectory];
paths = NSSearchPathForDirectoriesInDomains(NSApplicationSupportDirectory, NSUserDomainMask, YES);
documentsDirectory = [paths objectAtIndex:0];
[self applyAttributes:documentsDirectory];
paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
documentsDirectory = [paths objectAtIndex:0];
[self applyAttributes:documentsDirectory];
-(void)applyAttributes:(NSString *)folderPath
{
NSArray *filesArray = [[NSFileManager defaultManager] subpathsOfDirectoryAtPath:folderPath error:nil];
NSEnumerator *filesEnumerator = [filesArray objectEnumerator];
NSString *fileName;
while (fileName = [filesEnumerator nextObject]) {
if([self addSkipBackupAttributeToItemAtURL:[NSURL fileURLWithPath:[folderPath stringByAppendingPathComponent:fileName]]])
{
//NSLog(@"success applying");
}
}
}
- (BOOL)addSkipBackupAttributeToItemAtURL:(NSURL *)URL
{
if([[NSFileManager defaultManager] fileExistsAtPath: [URL path]])
{
NSError *error = nil;
BOOL success = [URL setResourceValue: [NSNumber numberWithBool: YES]
forKey: NSURLIsExcludedFromBackupKey error: &error];
if(!success){
NSLog(@"Error excluding %@ from backup %@", [URL lastPathComponent], error);
}
return success;
}
return NO;
}
于 2013-05-13T11:57:56.860 回答
1
只需更改您的 Cordova.plist 文件。在备份存储更改为云 = 无。从科尔多瓦框架中的参考资料中获取帮助。这不适用于本机应用程序。对于本机应用程序,开发人员通知或验证用户该应用程序将在 iCloud 上进行存储。
于 2013-05-13T12:54:06.323 回答