Updating Apps For WatchOS 10
I’m sure you can’t have missed that Apple recently announced WatchOS 10 at WWDC 2023. Front and centre for WatchOS this year is a new design language for apps. My key takeaways were:
The edge of the screen boundary doesn’t need to be hidden. With Apple Watch Series 4 now being the oldest supported Apple Watch, that device (despite being nearly 5 years old) still has a fantastic and expansive display far improved from the small square the original Apple Watch offered. This means Apple can say confidently YES to background colour gradients which fill the screen. These provide an effective way to remind users where they are in the app.
Start with the most relevant data but offer more where possible. Yes the previous principles do apply, Watch apps should be designed for quick and glanceable interactions. However there are occasions where users want to see more data and WatchOS 10 provides two new great ways to let users navigate this data, Navigation Split View and Tab View vertical pages.
Charts are a good, quick way to convey information. Heart Analyzer has included charts in the Watch app since the early days of WatchOS even going to the extremes of rendering images of chart data to enable such a feature with the limited WatchKit API set. With good performance available to render modern Swift Charts and more space to display them charts can be glanceable and clear.
Reviewing WatchOS 10 Design
Apple has shown us great examples of these new design principles. I found Fitness, Weather and Stocks provided some key inspiration in the new design for Heart Analyzer.
The Fitness app is a great example of where Apple demonstrates using the new gradient backgrounds in WatchOS 10. Here the app conveys if you’re looking at Move, Exercise or Stand data by tinting the background accordingly. This not only looks fantastic but is a good opportunity to give additional navigation context.
The Weather app in WatchOS 10 launches users straight into the weather summary for the current time at their location. This is most likely exactly what the user wants to see. If they want more detail on the weather they can just use the Digital Crown and scroll through vertical pages of data. If they want to see the weather for somewhere else, the Navigation Split View allows them to navigate up the hierarchy with a beautiful animation giving them an overview
The Stocks app in WatchOS 10 includes an updated design. Unlike the Weather app, this one launches you to the overview page at the root to the Navigation Split View. Here you can see all your stocks and colour is used to give the user an immediate impression of which direction stocks are trending.
A stock can then be selected into a single detail view. What I noted here was that for each selected stock there is a large chart displaying historical data. Here Apple have provided a consistent Toolbar button to let users toggle through chart variations.
Bringing it all together
Having finished reviewing Apple’s use of the latest design techniques in WatchOS it was time to apply it to my app Heart Analyzer.
The new Heart Analyzer Watch app aims to offer even faster access to your Heart Rate metrics whilst still providing easy ways to dive into all the Health data Apple Watch records. The new design frameworks available in WatchOS 10 really suit apps like this with glanceable content and intuitive navigation to further detail.
If you’re looking to take your Watch app further or develop a new one I hope the above run through gives some inspiration. Contrary to what others may say, I’ve never been more excited about developing for Apple Watch. I’m really looking forward to releasing this update next month!
Developer Tidbits
Performance
For this update to the Watch app, I actually chose to start from scratch. I wanted to go all in with Swift async/await and the SwiftUI lifecycle. It’s been a bit of a learning curve but the results have been totally worth it, the app is fast and fluid. Currently Apple Watch CPUs only really fall into two categories, Apple Watch Series 4, 5 & SE all run a variant of the S4 chip, Series 6, 7, 8 SE & Ultra all run a variant of the S6 chip. I developed this new app pre-testing entirely on an Apple Watch Series 5 to ensure it would be fast on all supported Apple Watches.
Device Support
Heart Analyzer supports WatchOS 8 & newer. This will continue although this new app design will be WatchOS 10 only. Fortunately all Apple Watches that run WatchOS 9 can update to WatchOS 10 next month, although there is one slight caveat. Users with an iPhone 8 or X will not be able to update to iOS 17 meaning paired Apple Watches will remain on WatchOS 9. Lots of my users still have iPhones on iOS 15 and older Apple Watches on WatchOS 8. This means it’s important to ensure the app works consistently across WatchOS 8, 9 & 10.
WidgetKit
Heart Analyzer will adopt WidgetKit for WatchOS 10 users. This is mostly to ensure that users can put the app in the new Smart Stack. Unfortunately popular features were missing from WidgetKit in WatchOS 9 so it means another fragmented support area to keep on top of.
TestFlight
Heart Analyzer V10.2 is available to beta test through TestFlight. You can sign up here. The new Watch app detailed above will be added soon in a future build.