根据我是否在模拟器中,我现在有权立即触发iCloud加载。当我尝试在真实设备上运行时,出现黑屏,'addPersistentStore'行似乎挂起。 “我的项目名称”是权利文件的名称和应用程序的名称。尝试在手机上启动iCloud应用程序时出现黑屏
发生了什么事?
#if (TARGET_IPHONE_SIMULATOR)
if (![psc addPersistentStoreWithType:NSSQLiteStoreType
configuration:nil
URL:dbUrl
options:nil
error:&error]) {
[NSException raise:@"Open failed" format:@"Reason: %@", [error localizedDescription]];
}
#else
NSFileManager *fm = [NSFileManager defaultManager];
NSURL *ubContainer = [fm URLForUbiquityContainerIdentifier:nil];
NSMutableDictionary *options = [NSMutableDictionary dictionary];
[options setObject:@"My Project Name" forKey:NSPersistentStoreUbiquitousContentNameKey];
[options setObject:ubContainer forKey:NSPersistentStoreUbiquitousContentURLKey];
if (![psc addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:dbUrl options:options error:&error]) {
[NSException raise:@"Open failed" format:@"%@", [error localizedDescription]];
}
#endif
否。该行返回正常。这是挂起的addPersistentStore。 –
我仍然会尝试在不同的线程上运行它。在这个SO问题有人有相同的问题:http://stackoverflow.com/questions/12923238/ios-application-freezing-on-first-launch-when-icloud-is-enabled –
这是好的建议,无论哪种方式 – DGund