Always on display not working with location updates

I have a watch app which is receiving location updates every second, so it is being executed in the background even if the wrist is down. I thought this would qualify the app to update the user interface every second, but it is not working. I set a breakpoint where the user interface is updated, and the code is being executed but I get no update in the user interface. I have tested this both in the simulator and in the device.

Should this work with an app which gets locations updates? I thought it would make sense for an app like this.

The app is written in objective-C if that makes it any different.

Thank you.

Answered by Frameworks Engineer in 687151022

Thanks for including the detail about the app being written in Objective-C. The new TimelineView, which you could employ to update your app's UI while in always-on mode, is a SwiftUI API. Apps that use WatchKit UI will be shown in always-on, but their UI cannot be customized.

Accepted Answer

Thanks for including the detail about the app being written in Objective-C. The new TimelineView, which you could employ to update your app's UI while in always-on mode, is a SwiftUI API. Apps that use WatchKit UI will be shown in always-on, but their UI cannot be customized.

Thanks for confirming it won't work in an Objective-C app and that the user interface won't update with the wrist down.

It is a pity some new features are only being brought to SwiftUI. This app has been available since WatchOS 2.0 and the work to port it to get this feature is not currently worthwhile. Maybe in the future, when more new features are cut out from Objective-C.

Always on display not working with location updates
 
 
Q