向用户显示iCloud同步正在进行中

时间:2014-04-08 05:20:57

标签: ios core-data icloud

我目前正在使用CoreData-iCloud设置。每次用户在其中一个设备中添加/删除/编辑时,更改都会同步到iCloud(如果可用),然后在打开应用程序时推送到其他设备。

不幸的是,iCloud不是即时的。当用户在他的第二个设备中打开应用程序时,实体连接需要10~20秒才能显示同步数据。

有没有办法检测应用程序何时与iCloud连接,通知用户实际上发生了什么事情,并且应用程序正在运行(在某处显示一个小旋转器)?

至少能够通过pull to refresh手动触发iCloud更新。能够向用户显示“您的数据正在运行中,持续一段时间”的内容真是太棒了。

感谢。

2 个答案:

答案 0 :(得分:3)

看看这些示例应用程序,他们使用iCloud中的日志文件状态来确定上载或下载活动的进行时间。

http://ossh.com.au/design-and-technology/software-development/sample-library-style-ios-core-data-app-with-icloud-integration/

答案 1 :(得分:1)

没有用于使用CoreData-iCloud检查事务日志状态的文档API。绝对没有办法“触发”iCloud更新,但是为了检查待处理的数据,你可能能够使用NSMetadataQuery和iCloud KVS来破解一些东西,但它也将是不精确和不可预测的。希望这是在iOS8中添加的(您可能希望在使用时提交Radar)。