我正在尝试将用户的卡路里消耗量添加到Apple健康套件应用中。但是当它被添加到健康应用程序时,该值将被除以千分之一。这是我添加到健康工具包的代码。
NSDictionary *calorieData = @{@"Unit": [HKUnit kilocalorieUnit], @"Identifier":HKQuantityTypeIdentifierDietaryEnergyConsumed};
HKQuantity *quantity = [HKQuantity quantityWithUnit:[HKUnit kilocalorieUnit] doubleValue:123];
NSDate *now = [NSDate date];
HKQuantityType *quantityType = [HKQuantityType quantityTypeForIdentifier:HKQuantityTypeIdentifierDietaryEnergyConsumed];
HKQuantitySample *sample = [HKQuantitySample quantitySampleWithType:quantityType quantity:quantity startDate:now endDate:now metadata:metaData];
[[self healthStore] saveObject:sample withCompletion:^(BOOL success, NSError *error) {
if (success)
NSLog(@"Added");
}];
我在健康套装中添加了123千卡的热量。添加后,它在健康应用程序中显示为123 Cal。 当我从HealthKit中检索时,它将以123千卡为单位。
任何帮助将不胜感激!
答案 0 :(得分:0)
资本“C”的卡路里相当于千卡。来自Wikipedia:
小卡路里或克卡路里(符号:cal)是近似值 提高一克水温度所需的能量 在一个大气压的压力下摄氏1度。
大卡路里或千卡热量(符号:Cal),也称为食物 卡路里和类似名称,以千克为单位 而不是克。它等于1000小卡路里,1 千卡(符号:kcal)。