我正在使用Xcode 6.1.1,模拟器是在iOS8.1中。
我已经尝试了几个不同来源的解决方案:
- URLForUbiquityContainerIdentifier始终返回nil
- 即使正确配置,URLForUbiquityContainerIdentifier也会返回nil
- https://devforums.apple.com/thread/229509?
但似乎没有任何作用。我的设置如下:
权利和功能:
代码:
dispatch_async(dispatch_get_global_queue (DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^(void) {
NSURL *myContainer = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:nil];
// unarchive journal object from iCloud
if (myContainer != nil) {
NSString *filePath = [NSString stringWithFormat:@"%@/%@", myContainer.path, ARCHIVE_FILE_NAME];
self.journal = [NSKeyedUnarchiver unarchiveObjectWithFile:filePath];
// initialize journal from local storage if there's no iCloud archive
if (self.journal == nil)
[self initJournalFromLocalStorage];
else
[self.journal validateUserDefines];
self.journal.cloudURL = myContainer;
dispatch_async (dispatch_get_main_queue (), ^(void) {
// On the main thread, update UI and state as appropriate
});
}
});
我的Apple ID已经启用了开发和分发的iCloud;我尝试创建和下载新的配置文件。
我还尝试在.entitlements中将iCloud.$(CFBundleIdentifier)更改为$(TeamIdentifierPrefix)$(CFBundleIdentifier)。
无论我做什么,URLForUbiquityContainerIdentifier始终返回nil。任何帮助都将不胜感激!