如何解决CloudKit 在连接到蜂窝网络时不会自动同步 CoreData
我正在开发一个使用 Core Data 进行持久存储的项目,我现在正在使用 CloudKit 在不同设备之间同步用户的应用程序数据。 我已使用 https://developer.apple.com/documentation/coredata/mirroring_a_core_data_store_with_cloudkit/setting_up_core_data_with_cloudkit 帮助我进行设置。
我首先使用连接到(相同)Wifi 网络的 2 台设备对此进行了测试,并且运行良好。在两台设备上打开该应用程序并在 1 个应用程序上进行更改,稍后会看到它出现在另一台设备上。非常好,很惊讶能这么好用这么少的努力。
但是...然后我在 1 台设备上禁用了 WiFi,以便它连接到蜂窝网络,然后问题就开始了。好的实时同步不再起作用了! “强制”查看正在传播到另一台设备的更改的唯一方法是将应用程序移至后台并再次移至前台。 (我假设这会强制从 iCloud 获取数据。)
我检查过的东西:
- 我已启用(静默)远程通知。基本上做了上面链接中提到的所有事情。
- 我检查了我的移动数据设置中是否启用了 iCloud Drive。很明显,因为当应用程序进入前台时,会获取 (iCloud) 数据。
我的问题是,这是预期的行为吗? CloudKit 是否应该在蜂窝网络上以不同的方式工作? 在上面链接中提到的 Apple 网页上,根本没有提到不同网络上的不同行为。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。