我正在尝试将iCloud支持添加到我的iOS-5.1应用程序中,根据Apple's iCloud Design Guide“准备使用iCloud的应用程序”部分。 它说:
在应用启动过程的早期 - 在应用程序中:didFinishLaunchingWithOptions:method(iOS)或applicationDidFinishLaunching:method(OS X),通过调用NSFileManager方法ubiquityIdentityToken检查iCloud可用性,如下所示:
id currentiCloudToken = [[NSFileManager defaultManager] ubiquityIdentityToken];
问题是,这个方法(ubiquityIdentityToken
)在OS X v10.8及更高版本中可用,我只安装了10.7.4。
如果我在10.7下进行开发,是否有任何解决方法或其他解决方案? 为什么这种方法可用性与OSX版本相关,而不是与iOS版本相关?
答案 0 :(得分:5)
Andrea的回答涵盖了你的第一个问题。
关于为什么会出现这种情况的第二个问题:根据 iOS NSFileManager类文档,ubiquityIdentityToken
仅适用于iOS 6.0及更高版本。您可能已经阅读了NSFileManager
而不是iOS版的OS X,因此您看到了OS X的要求。
答案 1 :(得分:1)
来自OS X发行说明:
在Mac OS 10.7中,检查用户是否登录的唯一方法 iCloud with Data&启用的文档是调用 - [NSFileManager URLForUbiquityContainerIdentifier:] 并检查非零URL。 然而,这种方法有时会阻塞大量的 时间,使其不适合从主线程调用。