ios - iOS 14 小部件:如何确保数据是最新的
问题描述
我有一个 SwiftUI 项目,我正在其中实现一个 iOS 14 小部件。
主应用程序使用 iCloud/CloudKit 来保存用户的统计信息,小部件获取并显示这些统计信息。
我担心的是小部件和主应用程序可能会不同步——小部件可能会显示过时的统计信息。
这是场景:
- 用户打开主应用程序并更改其统计信息。
- 用户关闭主应用程序并发现小部件尚未刷新,因此它显示的是过时的统计信息。
问题:是否有处理这种情况的推荐策略 - 可能在主应用程序关闭时以某种方式更新小部件?我阅读了文档——特别是文章“保持小部件保持最新”,但我没有看到任何关于此的内容。
谢谢!
解决方案
据我了解,您可以使用以下代码从主应用程序请求小部件刷新:
WidgetCenter.shared.reloadTimelines(ofKind: "com.mygame.gamestatus")
这应该可以解决问题。
推荐阅读
- search - 如何在gvim中搜索单词但替换上面一行中的字符
- asp.net - mvc 使用 linq 选择第二个表数据
- python - Python中的Swagger数组响应不适用于生成的客户端
- java - 如何从“没有处理程序等待消息”警告中恢复客户端?
- javascript - 将值从控制器传递到模板引擎 - MVC 和 EJS
- angular - Ionic 3 搜索保存结果如何清除
- python - 写入 csv 时出现 Python 错误。我究竟做错了什么?
- salesforce - Salesforce Java 连接适用于 Sandbox,但不适用于生产
- laravel - 如何更改背包为 laravel 的选择字段上的选项名称
- bash - 学习脚本/编程(开始)