我正在使用 NSUbiquitousKeyValueStore
将一些偏好数据同步到 iCloud。我发现如果用户在“设置应用程序”中禁用 iCloud 的“文档和数据”项,NSUbiquitousKeyValueStore
无法将其数据同步到 iCloud。所以,我想先检查一下这个设置是否打开了。我找到了这个代码片段:
NSURL *ubiq = [[NSFileManager defaultManager]
URLForUbiquityContainerIdentifier:nil];
NSLog(@"url=%@",ubiq);
if (!ubiq) {
UIAlertView *av = [[UIAlertView alloc] initWithTitle:nil message:@"Please enable iCloud in Setting app" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil, nil];
[av show];
return;
}
我想知道这是否是唯一的检测方法,即使我只是使用 NSUbiquitousKeyValueStore
(不是 iCloud 文档存储)。有更好的选择吗?
最佳答案
基本上,NSUbiquitousKeyValueStore
始终可用,即使用户没有 iCloud 帐户(在这种情况下,NSUbiquitousKeyValueStore
只是一个简单的本地存储)。所以一般情况下,你不需要问自己或用户是否有配置的 iCloud 帐户。
如果您真的想确定,在 iOS 5 中,唯一的解决方案就是您提到的那个。
关于ios - 仅使用 NSUbiquitousKeyValueStore 时,如何以编程方式检测用户设备上是否启用了 iCloud?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11006610/