手表上的应用

手表屏小、戴在手上,应用得一眼看清、抬手即看。它常是 iPhone 应用的 companion,也能独立跑。健康数据是手表最核心的场景。表盘常年贴着皮肤,天然适合持续感知心率、步数这些随身信号,这正是手机做不到、手表独有的价值。

手表应用的第一原则:少一步操作,多一眼信息。

这篇把 watchOS 与健康开发过一遍。

WatchKit 与界面

watchOS 界面用 SwiftUI 写,配合 WatchKit 处理生命周期与 complication。注意手表的屏幕小,字号要大、布局要单栏。

watchOS 速查
  • 界面SwiftUI 写,单栏大字。
  • HealthKit拿健康数据要授权。
  • 活动环步数与活动能量。

HealthKit 授权与数据

读健康数据先请求授权,用户明确同意哪类才拿哪类。隐私是红线,别申请不需要的权限。

let store = HKHealthStore()
let heart = HKObjectType.quantityType(
  forIdentifier: .heartRate)!
store.requestAuthorization(toShare: nil, read: [heart])

授权一次,后面才能读。用户能在系统设置里随时收回,所以你的应用在没拿到授权时要有得体的空状态,别一打开就崩。

读取心率与活动环

心率、步数、活动能量都在 HealthKit 里。用查询拉取当天数据,算出来就是活动环的三段。站得越久、动得越多,环闭合得越满。

watchOS:一块抽象圆形手表悬浮中央、周围环绕心率波形线与三段彩色活动环的蓝调插画
活动环:心率波形与三段彩色环。