Break up the ios services layer
commit2026-01-24 · schuss
One commit, but a big one. Pulled the iOS app's tracking guts apart into proper services: a barometric AltimeterManager, a PedometerManager, an AdaptiveSamplingManager that drops motion sensor rates on the lift, a LiveActivityManager for the lock screen, and the HealthKit workout session glue that lets any of this run unattended in the background. Also swapped the NotificationCenter dance for Combine publishers in LocationManager and HybridActivityService, added retry with exponential backoff to APIService, wired up the session upload endpoint, and filled in the Info.plist with the usage descriptions and entitlements that all this needs. The Live Activity will start but won't actually render until the widget extension exists, which I noted in the file so future me stops being confused about it.
Related
- ProjectSchuss(getschuss.com)