ios – NSUbiquitousKeyValueStore不与iCloud同步
2019年06月19日
作者:佚名
我已经尝试了所有内容并阅读了所有主题,但我无法找出为什么NSUbiquitousKeyValueStore没有存储在iCloud上.
•创建了特定的应用程序ID
•为此App ID启用了iCloud
•创建供应配置文件
•在项目上启用iCloud
•将权利设置为键值:$(TeamIdentifierPrefix)$(CFBundleIdentifier)
•打开设备上的iCloud Drive
但NSUbiquitousKeyValueStore仅在本地保存.当我重新安装应用程序时,它不会从iCloud获取信息.
这是我正在尝试的方式:
NSUbiquitousKeyValueStore *cloudStore = [NSUbiquitousKeyValueStore defaultStore]; if ([[cloudStore stringForKey:@"testString"] length] == 0) { NSLog(@"Nothing in iCloud - setting a value..."); [cloudStore setString:@"I'm live in iCloud!" forKey:@"testString"]; [cloudStore synchronize]; [[NSUbiquitousKeyValueStore defaultStore] synchronize]; } else { NSString *result = [cloudStore stringForKey:@"testString"]; NSLog(@"Found something in iCloud - here it is: %@",result); } [self registerForiCloudNotificatons];
如果我删除应用程序或尝试新设备,它在iCloud上找不到任何内容.
所以我试着找出iCloud是否正常工作:
NSURL *ubiq = [[NSFileManager defaultManager] URLForUbiquityContainerIdentifier:nil]; if (ubiq) { NSLog(@"iCloud at %@",ubiq); } else { NSLog(@"No iCloud access,%@",ubiq); }
这总是返回“没有iCloud访问”,我无法弄明白为什么.无论我做什么,URLForUbiquityContainerIdentifier总是返回nil.
我在支持iCloud的iOS 8设备上运行.
我错过了什么吗?
谢谢!
解决方法
我有同样的问题.在设备上注销并重新登录我的iCloud帐户也为我解决了这个问题.
在启用iCloud权利之前,如果在设备上安装了具有相同捆绑标识符的应用程序,则似乎会出现此问题.我在2个测试设备上遇到了这个问题.我第一次在启用iCloud的情况下安装应用程序的第三台设备没有遇到任何问题.
以上是来客网为你收集整理的ios – NSUbiquitousKeyValueStore不与iCloud同步全部内容,希望文章能够帮你解决ios – NSUbiquitousKeyValueStore不与iCloud同步所遇到的程序开发问题。
如果觉得来客网网站内容还不错,欢迎将来客网网站推荐给程序员好友。