In my app the user can change some settings, those changes affect how the widget looks. For example changing the colors, the units C / F, location etc.
When the user changes the settings I call WidgetCenter.reloadAllTimelines(), sometimes the widget will update immediately, maybe just once, sometimes it will after a minute or so and sometimes not for a long time.
This makes the whole experience feel broken. I understand apps shouldn't be allowed to abuse reloads of the timeline but it seems like at least the app can give a hint to the reload method e.g.
WidgetCenter.reloadAllTimelines(hint: .appearance)
Which when specified would give the widget update priority and maybe update immediately. Obviously there would need to be some allowances where you get two or three updates in a short time period then extended after that.
Right now it just feels broken to let users change settings in the app and the widget may or may not update in a reasonable time.
When the user changes the settings I call WidgetCenter.reloadAllTimelines(), sometimes the widget will update immediately, maybe just once, sometimes it will after a minute or so and sometimes not for a long time.
This makes the whole experience feel broken. I understand apps shouldn't be allowed to abuse reloads of the timeline but it seems like at least the app can give a hint to the reload method e.g.
WidgetCenter.reloadAllTimelines(hint: .appearance)
Which when specified would give the widget update priority and maybe update immediately. Obviously there would need to be some allowances where you get two or three updates in a short time period then extended after that.
Right now it just feels broken to let users change settings in the app and the widget may or may not update in a reasonable time.