快速心率变异性结果从ms转换为double

时间:2018-11-11 07:02:14

标签: ios swift health-kit

因此,我正在尝试制作一个可获取用户心率变异性并显示给他们的应用程序。问题是我不太确定如何将我从查询中获得的结果转换为我尝试过使用的双精度值

let quantity: HKQuantity? = result?.averageQuantity()
beats = quantity?.doubleValue(for: HKUnit.count().unitDivided(by: HKUnit.minute()))
print(beats)

但是我会收到错误“原因:'尝试转换不兼容的单位:ms,计数/分钟'”,这是可以预期的,因为拍子线用于平均心率而不是心率变异性。如果我打印出数量变量,则会以“ Optional(65.24 ms)”的格式返回结果。

我的问题是如何正确地将第一行的结果从ms转换为double?或者如何在标签上显示?因为在ms形式下它不起作用。

感谢预先提供的帮助

1 个答案:

答案 0 :(得分:1)

找到了解决方案。这是将心率变异性结果从MS转换为双精度值的方法。然后,您可以将其更改为字符串

beats = quantity?.doubleValue(for: HKUnit.secondUnit(with: .milli))