OGeek|极客世界-中国程序员成长平台

标题: iphone - iCloud 同步不适用于 iPhone 4S 和 5 上的应用程序 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-12 09:40
标题: iphone - iCloud 同步不适用于 iPhone 4S 和 5 上的应用程序

总结:

安装在支持 iCloud 同步的 iOS(iPhone 4S 或 iPhone 5 - 均已测试)上的应用程序实际上并不与 iCloud 同步。 iOS版本是6.1.2。

我们正在开发一个应用程序并添加了 iCloud 支持。配置文件在启用 iCloud 的情况下重新创建并存储在设备上。权利在 xcode 中正确配置为使用 iCloud 和键值存储(标识符的值设置为默认值)。我们按照 Apple 的 iCloud 设计指南教程来实现与 iCloud 同步的功能(使用 NSUbiquitousKeyValueStore 类来存储和读取值)。

复制步骤:

在 iPhone 4S 或 5(已安装 iOS 6.1.2)上使用支持 iCloud 的应用(处于开发模式或从 App Store 安装的应用)。转到设置 > iCloud > 文档和数据并启用文档和数据并禁用使用蜂窝数据。尝试将应用程序与 iCloud 一起使用。数据不会在设备之间同步。我们也尝试如下:运行应用程序,将值存储到 iCloud,删除应用程序,重新安装应用程序,运行应用程序,无法从 iCloud 检索值。

关闭 iPhone 并重新打开。 转到设置 > iCloud > 文档和数据并启用使用蜂窝数据。

现在在启用 iCloud 并将值存储在 iCloud 中的情况下运行应用程序。该值已从 iCloud 同步...一切正常。

预期结果:

如果在“设置”>“iCloud”>“文档和数据”中禁用“使用蜂窝数据”并启用“文档和数据”,则 iCloud 同步有效。

实际结果:

如果在“设置”>“iCloud”>“文档和数据”中禁用“使用蜂窝数据”,则 iCloud 同步将不起作用。

注意事项:

此外,通知 NSUbiquitousKeyValueStoreDidChangeExternallyNotification 从未触发选择器集,除非在“设置”>“iCloud”>“文档和数据”中启用了“使用蜂窝数据”。

谁能重现相同的行为? 有人可以让 iCloud 同步与在“设置”>“iCloud”>“文档和数据”中禁用的“使用蜂窝数据”一起使用吗?

提前致谢!



Best Answer-推荐答案


iCloud 键值存储 不可靠,如 iCloud Design Guide 中所述.

由于键值存储限制,数据传播可能会延迟。

来自“首选项和设置”指南:

“键值存储是用来存储不经常更改的数据。如果设备上的应用程序对键值存储进行频繁更改,系统可能会延迟一些更改的同步以最小化到服务器的往返次数。应用程序进行更改的频率越高,以后的更改就越有可能被推迟并且不会立即显示在其他设备上。"

有时,由于这种 KVS 限制,即使 Documents & Data 选项和 Use Cellular Data 选项都不会触发 NSUbiquitousKeyValueStoreDidChangeExternallyNotification已启用。

这可能是你的问题。

如果没有,您应该等待 Apple 工作人员回复您的错误报告。 (我想您已经报告了一个错误,因为您的问题是 Apple 错误报告格式。)

关于iphone - iCloud 同步不适用于 iPhone 4S 和 5 上的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15408515/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://ogeek.cn/) Powered by Discuz! X3.4