我目前正在使用CoreData-iCloud设置。每次用户在其中一个设备中添加/删除/编辑时,更改都会同步到iCloud(如果可用),然后在打开应用程序时推送到其他设备。
不幸的是,iCloud不是即时的。当用户在他的第二个设备中打开应用程序时,实体连接需要10~20秒才能显示同步数据。
有没有办法检测应用程序何时与iCloud连接,通知用户实际上发生了什么事情,并且应用程序正在运行(在某处显示一个小旋转器)?
至少能够通过pull to refresh手动触发iCloud更新。能够向用户显示“您的数据正在运行中,持续一段时间”的内容真是太棒了。
感谢。
答案 0 :(得分:3)
看看这些示例应用程序,他们使用iCloud中的日志文件状态来确定上载或下载活动的进行时间。
答案 1 :(得分:1)
没有用于使用CoreData-iCloud检查事务日志状态的文档API。绝对没有办法“触发”iCloud更新,但是为了检查待处理的数据,你可能能够使用NSMetadataQuery和iCloud KVS来破解一些东西,但它也将是不精确和不可预测的。希望这是在iOS8中添加的(您可能希望在使用时提交Radar)。