Friday, Feb. 1st 2019
Air Lookout 1.4: All The Complications
The idea of having Air Lookout complications on the Apple Watch has been a dream of mine since complications on watchOS were announced. I have had a prototype complication working since the summer of 2016. However, I ran into some strange limitations, quirks or bugs where I couldn't get the complication to update as reliably as I wanted.
An Air Lookout complication is unusually demanding in that there's a fairly large amount of background tasks that it has to do (ideally once an hour as that's when new readings are published by the Environmental Protection Agency), namely:
- Update the user's location
- Send a network request to update the air quality readings
- And of course: update the UI/complication
I needed this to happen reliably without draining battery or degrading performance of the watch. I also wanted all of this to happen independently of the phone.
While it's still not guaranteed that any of these events will be triggered at a regular interval (documentation suggests at least 50 updates per 24 hours), it's a huge improvement over watchOS 4 and 3. I may go further into the technical details on another post, but prior to watch OS 5, it wasn't reliable enough for me to promise and ship this to users.
This is no longer the case. This is now all possible and, from what I have seen, reliable on watchOS 5. I have been testing these Air Lookout complications every day since the watchOS 5 beta was released at WWDC 2018 and I’m pretty happy with the results.
Air Lookout supports every complication in watchOS5. There are 11 different complications in watchOS 5 and Air Lookout supports all of them. Additionally, many of the complications that support an image I dynamically draw a sparkline graph. For complications that don’t support an image, where there is space, I draw a unicode arrow to indicate if the air quality is trending up, down or staying the same. I have tried to have the information density as tastefully high as possible.
Here are all the supported complications:
- Modular Small (supports: Sparkline Graph)
- Modular Large (supports: Sparkline Graph)
- Utilitarian Small (supports: Trend Arrow)
- Utilitarian Small Flat (supports: Trend Arrow)
- Utilitarian Large (supports: Sparkline Graph)
- Circular Small (supports: Trend Arrow)
- Extra Large (supports: Sparkline Graph)
- Graphic Corner
- Graphic Bezel
- Graphic Circular
- Graphic Rectangular (supports: Full-Color Graph)
In short: every watch face that supports 3rd party complications will support an Air Lookout complication.
Graphic rectangular is the best complication for power users. This is the complication that I use every day. The thicker white line represents the Air Quality Index and the thinner light lines show the AQI of each individual pollutant. This has been really helpful to see if a change in AQI is due to improved conditions or temporarily missing measurements for pollutants (as shown in the first screenshot above). Most important to me is seeing if my local station is showing a change in air quality and the integrity of the reporting data.
A Brand New watchOS App
Until fairly recently, the watch hardware wasn’t fast enough to process and display all the data and information that the iOS app could. The biggest thing holding this back was always the original (Series 0) Apple Watch. With watchOS 5 only supporting Series 1 and newer Apple Watches, this has enabled me to build a much more robust and rich watchOS app.
In fact, the watchOS app has a few features (such as sparklines for every pollutant) that the iOS app doesn’t have yet!
A Refined iOS App
There are a handful of iOS app refinements in Air Lookout 1.4. This is all in preparation for a fairly big rewrite that I hope to get a good start on in early 2019.
- Improved legibility for station names and page titles on moderate (yellow) background colors.
- Added clarity if a station is not reporting PM2.5 or O3.
From now on, Air Lookout will require stations to report both particulate matter small (PM2.5) and ozone (O3) to be in the top 10 ranking.
This update also brings support to all the new iPhone hardware.
I hope you enjoy the updates as much as I do. I use Air Lookout every day and a lot of these features either came highly requested from users or improvements I have wanted for awhile. I’m really excited to continue working on Air Lookout, supporting more devices and continuing to add and improve features.
You can download Air Lookout on the iOS App Store for just $0.99.
If you enjoy it, please consider leaving a review. It really does help me.
Updated on Saturday, Feb. 15th 2020