【问题标题】:iCloud NSUserDefaults not syncing across devices (via MKiCloudSync)iCloud NSUserDefaults 未跨设备同步(通过 MKiCloudSync)
【发布时间】:2012-10-23 17:40:51
【问题描述】:

我已经构建了一个启用了 iCloud 的应用程序,并且我正在两台设备上运行它。

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

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

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

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

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

【问题讨论】:

  • 我是否需要等待我的设备之间发生同步?它不是即时的(即它仅在设备进入后台时发生吗?)
  • 您是否为此使用了 iCloud 键值存储?
  • @Maddy 是的!我正在使用 MKiCloudSync 推送和拉取 NSUserDefault 更改。
  • 这将是您原始问题中包含的重要细节。编辑 - 你刚刚做了:)
  • 完成。我已经编辑了我的问题。

标签: objective-c ios nsuserdefaults icloud


【解决方案1】:

NSUserDefaults 不会自动同步到云端。

你可以使用:

https://github.com/MugunthKumar/MKiCloudSync

虽然,使用键/值存储非常不稳定。许多开发人员(以及我自己)都报告了不一致的同步。

【讨论】:

  • 我正在使用 MKiCloudSync 来执行同步。 updateFromiCloud 不会被调用,即使发生了似乎已被推送的更改。
  • 对不起,我没有在你的帖子中看到。如果您遇到同步问题,那么可能是因为键/值存储刚刚损坏。我试图在我的游戏中添加云存档,但由于这些问题,几周前我放弃了。我向苹果开了一张票,他们没有帮助。 Apple 开发人员表单上有一个关于它被破坏的长线程。
  • 不只是键/值存储,甚至文档存储也损坏了。 iCloud 同步不提供任何通过网络界面进行故障排除的方法。
猜你喜欢
  • 2019-10-26
  • 1970-01-01
  • 1970-01-01
  • 2013-05-29
  • 1970-01-01
  • 2011-12-08
  • 2014-11-16
  • 2021-01-25
  • 1970-01-01
相关资源
最近更新 更多