Objective c iCloud NSUserDefault不跨设备同步(通过MKiCloudSync)

Objective c iCloud NSUserDefault不跨设备同步(通过MKiCloudSync),objective-c,ios,nsuserdefaults,icloud,Objective C,Ios,Nsuserdefaults,Icloud,我已经开发了一个应用程序,并启用了iCloud,我正在两台设备上运行它 我所期望的是,当我添加一些数据时,它会被写入NSUserDefaults,并使用MKiCloudSync类,随后被上传到iCloud。这似乎是可行的 然后,当我在另一台设备上打开应用程序时,我正试图从iCloud(通过MKiCloudSync)下拉NSUserDefaults 我在同一代码上运行了两台设备(我已经在一个分发版本中尝试过)。这些设备均已启用iCloud并连接到同一帐户 但是,在第一台设备上创建了一些数据,然后试

我已经开发了一个应用程序,并启用了iCloud,我正在两台设备上运行它

我所期望的是,当我添加一些数据时,它会被写入NSUserDefaults,并使用MKiCloudSync类,随后被上传到iCloud。这似乎是可行的

然后,当我在另一台设备上打开应用程序时,我正试图从iCloud(通过MKiCloudSync)下拉NSUserDefaults

我在同一代码上运行了两台设备(我已经在一个分发版本中尝试过)。这些设备均已启用iCloud并连接到同一帐户

但是,在第一台设备上创建了一些数据,然后试图从第二台设备上取下这些数据后,我没有得到任何数据。当我启动这两台设备时,它们都试图下拉数据,但它们都不共享数据


我错过了什么?谢谢大家。

NSUserDefaults不会自动同步到云

您可以使用:


尽管如此,使用键/值存储是非常脆弱的。很多开发人员(包括我自己)都报告同步不一致。

我是否需要等待设备之间发生同步?它不是即时的吗(即,它是否只在设备进入后台时发生?)您是否使用iCloud键值存储进行此操作?@Maddy yes!我正在使用MKiCloudSync推拉NSUserDefault更改。这将是您原始问题中要包含的一个重要细节。编辑-你刚刚做了:)完成了。我已经编辑了我的问题。我正在使用MKiCloudSync执行同步。updateFromiCloud不会被调用,即使有更改看起来已经被推送。抱歉,我在你的帖子中没有看到。如果您遇到同步问题,那么可能是因为键/值存储刚刚损坏。我试图将云存储添加到我的游戏中,但几周前由于这些问题放弃了。我和苹果开了一张罚单,他们没有帮我。Apple开发表单上有一条关于它被破坏的长长的线索。不仅仅是键/值存储,甚至文档存储也被破坏了。iCloud sync不提供任何通过web界面进行故障排除的方法。