我在将iCloud与我的应用集成时遇到问题。
当我设置测试iCloud可用性时,我会收到函数的成功
NSURL *iCloudURL = [fileManager URLForUbiquityContainerIdentifier:@"AppID"];
但在此之后,当我尝试执行时:
NSUbiquitousKeyValueStore *iCloudStore = [NSUbiquitousKeyValueStore defaultStore];
我收到错误
NSUbiquitousKeyValueStore error: no valid com.apple.developer.ubiquity-kvstore-identifier entitlement.
有关如何解决此问题的任何想法?我的App.Entitlements文件使用默认的宏前缀,没有从自动生成的文件中更改。 iCloud肯定在iTunes Connect中的AppID上启用。
感谢。
答案 0 :(得分:16)
即使我的所有代码,设置,权利等都是正确的,我也遇到了同样的问题。我通过从iPhone上物理删除应用程序来修复它,然后在Xcode中构建并在我的iPhone上运行它并且它工作正常。只是想补充一点,以防其他解决方案对其他人不起作用。
答案 1 :(得分:5)
大警告:如果您的设备已越狱,请确保已卸载AppSync。因此,我有两个疯狂的日子。即使使用正确的权利和配置文件,iCloud(和Game Center)也无法在安装了AppSync的设备上运行!
答案 2 :(得分:3)
我做了以下操作让我的工作(Xcode 4.2.1):
答案 3 :(得分:2)
我在尝试调试Mac(而不是iOS)应用程序时遇到了这个问题。结果问题是我没有签署调试版本,并且没有将“跳过安装”设置为“是”的项目部署阶段。
显然,对于未签名的应用程序,iCloud无法正常运行。
答案 4 :(得分:1)
使用以下值在您的权利中添加com.apple.developer.ubiquity-kvstore-identifier
:
$(TeamIdentifierPrefix)$(CFBundleIdentifier)