【发布时间】:2021-01-06 03:00:14
【问题描述】:
我有一个将 Core Data 与 CloudKit 结合使用的应用程序。更改在设备之间同步。
主要目标具有背景模式功能,并已选中“远程通知”。主要目标和小部件目标都具有相同的 App Group,并且都具有 iCloud 功能,服务设置为 CloudKit,并且容器中的相同容器已选中。
为了从小部件访问 Core Data 数据,我使用 CoreDataStack,如this answer 所示。在 WidgetKit 文件中,我有一个执行获取请求并返回 Int 的函数——来自该请求的行数。稍后我会在小部件视图中显示该数字。
但是,如果 CloudKit 中的 Core Data 数据发生变化,例如——在另一个设备上用户添加或删除记录,Int 可能是不正确的。
当发生此类更改时,如何请求更新 WidgetKit 时间线条目? (如果数据在其他设备或当前设备上发生更改。)谢谢。
【问题讨论】:
标签: ios swift core-data cloudkit widgetkit