无需在 Watch 上创建应用程序即可在 Apple Watch Series 3 中读取心率

Read Heart Rate in Apple Watch Series 3 without creating an app on the Watch

是否可以在不创建手表应用程序的情况下read/sync Apple Watch Series 3 的心率数据? 我希望我的 iPhone 应用程序直接从 Apple Watch 读取数据,而无需为手表创建应用程序。

Apple Watch 将其所有记录的心率数据(佩戴时每五分钟自动采样一次,在锻炼期间更频繁地采样)同步到伴侣 iPhone 上的 HealthKit 商店。

因此您可以创建一个 iOS 应用程序(在用户许可的情况下)使用 HealthKit 读取存储的心率数据。要点:

  1. 在 Xcode 的功能面板(应用程序目标设置的一部分)中设置您的项目以支持 HealthKit。

  2. 检查设备上的 HealthKit 可用性 (HKHealthStore.isHealthDataAvailable()) 并创建一个 HKHealthStore 对象。

  3. 验证您是否拥有访问心率数据的用户权限:

    let heartRateType = HKObjectType.quantityType(forIdentifier: .heartRate)!
    healthStore.requestAuthorization(toShare: nil, read: [heartRateType], completion: myHandler)
    
  4. 在完成处理程序报告成功后,使用 HKSampleQuery to search for the most recent heart rate sample, a set of heart rate samples within a specified time frame, etc. (Or other HKQuery 子类处理随时间变化的平均心率等)


如果您要的是一种从 iOS 应用程序读取用户当前心率 "right now" 的方法,而无需创建配套的 watchOS 应用程序...不,没有一种方法。