我的应用程序需要最新数据,但主应用程序可能有旧数据。
所以我想请求主应用程序更新其数据。
是否可以?
如果不是,我想知道任何替代方法。
( WidgetKit 是否应该向服务器请求最新数据??)
谢谢
===
更新
我找到了很多教程,并且所有教程都使用来自 getTimeline
的 http 请求获取最新数据的方法(不是来自主应用程序)。这不是我想要的。
有人说在主应用程序和 WidgetKit 之间共享数据的最简单方法是使用 UserDefaults。但是,如果主应用程序不更新用户默认值或使用旧数据更新值,则数据可能是旧的。 (除了服务器数据总是最新的数据)
所以我想知道的是“WidgetKit 使主应用程序更新其数据并更新用户默认值并调用reloadTimelines
”的方式.所以 WidgetKit 可以使用最新数据。
最佳答案
Widget 无法告诉其父应用程序刷新其数据。
您可以:
WidgetCenter.shared.reloadAllTimelines()
实际上,直接在 Widget 中获取数据可能更好。这样你就可以只获取必要的数据—— WidgetKit View 显示的信息通常比应用程序 View 少得多。
关于swift - iOS14 WidgetKit 可以请求主应用程序更新其数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64256840/