微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

每次出现时更新 iOS 小部件

如何解决每次出现时更新 iOS 小部件

我正在 SwiftUI 中构建一个小部件并了解时间线,但是有没有办法在每次小部件出现在用户设备上时更新时间线?我想调用一个 API,以便数据是最新的,而不需要每隔几分钟调用一次。这可能吗?

解决方法

您无法创建会不断更新的小部件,因为操作系统会对其进行限制。

对于您所描述的实时体育比分小部件,您可以为您的 policy 属性在给定的时间间隔(例如,5 分钟,这可能仍然过于激进)指定未来日期。 Timeline 条目使用 .after(Date(timeIntervalSinceNow: 60 * 5)

您还希望对您的小部件进行智能处理,并且仅在已知比赛/比赛时间内指定这么短的时间间隔。

我强烈建议您仔细阅读 Apple 的 Time Provider DocumentationDetermining a Refresh PolicyRefreshing Widgets Efficiently 部分。如果您滥用刷新间隔,操作系统将限制您的应用刷新的速度。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。