在iOS 8.2的“健康”中重新添加了血糖值:https://support.apple.com/en-us/HT203113

如何为血糖值构建以mmol/L(毫摩尔/升)为单位的HealthKit HKUnit?

以下两个都引发异常:由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'无法解析因式分解字符串...

HKUnit *mmolPerL = [HKUnit unitFromString:@"mmol<molar mass>/L"];
HKUnit *mmolPerL = [HKUnit unitFromString:@"mmol/L"];

最佳答案

可以确认提供的示例不起作用(每个排列),替代的mg/dL单元可以。

综上所述,两种建议的方法都可以工作,关于结果HKUnit的结构具有相似的结果(@cbartel提出的方法实际上是四舍五入的,而不是另一种)。

Printing description of mmolPerL->_baseUnits->_factors:
NSMapTable {
[6] mmol<180.15588> -> 1
[7] L -> -1
}

我会使用提供的常量使用较短的形式:
HKUnit *mmolPerL = [HKUnit unitFromString:[NSString stringWithFormat:@"mmol<%f>/L",HKUnitMolarMassBloodGlucose]];

关于ios - 如何为血糖值构建以mmol/L(毫摩尔/升)为单位的HealthKit HKUnit?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30177741/

10-09 09:37