来自 Apple Watch 的 iOS 实时心率统计数据

Posted

技术标签:

【中文标题】来自 Apple Watch 的 iOS 实时心率统计数据【英文标题】:Live HeartRate Stats on iOS from AppleWatch 【发布时间】:2015-09-30 10:26:26 【问题描述】:

是否有可能从 Apple-Watch 获取有关用户心率的实时统计数据?目前,只要应用程序打开并且屏幕处于活动状态,我只会在手表上收到回调。然后我可以使用WCSession 将它们发送到电话。

但是在不打开手表的情况下在手机上获得实时统计数据是不可能的,对吧?

锻炼完成后我需要查询 HealthStore 吗?在手表上完成锻炼后,我需要在手机上等待多长时间才能同步心率数据? 将心率数据添加到我记录的 GPS 跟踪点的最佳做法是什么?只是在活动后一段时间查询 HealthStore 并尝试按时间戳匹配点?

非常欢迎任何建议或提示:)

【问题讨论】:

【参考方案1】:

如果您在 Apple 手表上启动 HKWorkoutSession,结果会以 5 秒的间隔写入 HealthKit(即使手表屏幕关闭)。此数据由 Apple 以相同的 5 秒间隔自动与您的 iPhone 同步。如果您在 iPhone 上创建健康包流式查询,您应该能够获得“近乎实时”的统计数据。请查看this answer,了解有关如何创建流式健康工具包查询的更多详细信息。

【讨论】:

太棒了!谢谢...我会看看链接!不错! 嗯...我的观察是,人力资源数据大约每隔几分钟就会发送一次到我的手机...:(你知道我可能会丢失什么吗? 嗯……Apple Watch 必须等待稍后批量发送数据以节省能源。我知道当我在 Apple Watch 上完成一项锻炼(使用 Apple 的锻炼应用程序或我自己制作的)时,如果我进入 Health App,锻炼就会立即出现,所以我假设这些数据是实时同步的。我想知道打开健康应用程序是否会触发此同步... 这个公认的答案具有误导性。正如@lehn0058 在上面的评论中所说,Apple watch 中的数据将在以后批量发送数据(根本不是“接近实时”的统计数据)。 @howa thx...我不接受它,因为它不是正确的答案...我太兴奋太早了:)【参考方案2】:

watchOS 上的应用只能在手表屏幕打开时运行,因此实际上无法可靠地将数据(例如用户的心率)从手表传输到手机上的应用。

当手表上的应用确实有机会运行时,它可以从 HealthKit 收集心率样本并将其发送给同伴。

无法在手机上显示实时心率统计数据,因为您的应用无法控制数据从手表同步到手机的频率。

【讨论】:

以上是关于来自 Apple Watch 的 iOS 实时心率统计数据的主要内容,如果未能解决你的问题,请参考以下文章

如何通过 healthkit 使用 Apple Watch 心率更新 iOS 应用程序? (HealthKit 同步)

即使 Apple Watch 屏幕关闭,也能访问锻炼数据

使用 HKHeartbeatSeriesSample 从 Apple Watch 获取实时心跳数据

如何在 Apple Watch 上检查监控心率?

是否可以让 Apple Watch 直接读取心率?

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