iOS 14 小部件:如何确保数据是最新的

iOS 14 widget: How to ensure that data is current

我有一个 SwiftUI 项目,我正在其中实现一个 iOS 14 小部件。

主应用程序使用 iCloud/CloudKit 来保存用户的统计数据,而小部件会获取并显示这些统计数据。

我担心的是小部件和主应用程序可能会不同步 -- 小部件可能会显示 过时 统计数据。

场景如下:

问题:是否有处理这种情况的推荐策略——也许在主应用程序关闭时以某种方式更新小部件?我阅读了文档——具体来说,the article“使小部件保持最新状态”,但我没有看到任何相关信息。

谢谢!

据我了解,您可以request a widget refresh from your main app使用以下代码:

WidgetCenter.shared.reloadTimelines(ofKind: "com.mygame.gamestatus")

这应该可以解决问题。