gpt4 book ai didi

ios - 从 HKHealthStore 获取最新的 BMI 值

转载 作者:行者123 更新时间:2023-11-29 10:37:04 25 4
gpt4 key购买 nike

我想从我的 HKHealthStore 实例中获取用户最近的 BMI 读数。截至目前,我正在按以下方式进行操作,但似乎不正确。有没有办法获取 BMI 的实际数值而不是 countUnit (HKUnit)?

HKQuantityType *bodyMassIndexType = [HKObjectType quantityTypeForIdentifier:HKQuantityTypeIdentifierBodyMassIndex];

HKSampleQuery *bmiSampleQuery = [[HKSampleQuery alloc] initWithSampleType:bodyMassIndexType predicate:nil limit:1 sortDescriptors:nil resultsHandler:^(HKSampleQuery *query, NSArray *results, NSError *error) {

if (results.count == 0)
{
//No results
}
else
{
if (!error)
{
NSString *bmiString = [NSString stringWithFormat:@"%@", [[results firstObject] quantity]];
NSString *parsedBMIString = [bmiString stringByReplacingOccurrencesOfString:@" count" withString:@""];
NSLog(@"%f", [parsedBMIString floatValue]);
}
}
}];

[self.store executeQuery:bmiSampleQuery];

最佳答案

示例返回一个数组,因此您可以简单地从数组中提取第一个对象,然后将其值转换为 double 以进行处理。

HKQuantitySample *sample = [results firstObject];
int i = [sample.quantity doubleValueForUnit:[HKUnit countUnit]];
NSLog(@"%i",i);

关于ios - 从 HKHealthStore 获取最新的 BMI 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26348128/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com