На iOS, без Apple Watch, как собрать общее количество энергии, сожженной для тренировки? - PullRequest
0 голосов
/ 13 октября 2019

При сохранении тренировки в магазине здоровья iOS без Apple Watch, как приложение должно рассчитывать totalEnergyBurned?

Apple использует жестко закодированное значение для totalEnergyBurned, но говорит, что реальное приложение рассчитаетэто значения из данных датчика.

HKQuantity *energyBurned = [HKQuantity quantityWithUnit:[HKUnit kilocalorieUnit] doubleValue:425.0];

HKQuantity *distance = [HKQuantity quantityWithUnit:[HKUnit mileUnit] doubleValue:3.2];

HKWorkout *run = [HKWorkout workoutWithActivityType:HKWorkoutActivityTypeRunning
                                          startDate:start
                                            endDate:end
                                           duration:0
                                  totalEnergyBurned:energyBurned
                                      totalDistance:distance
                                           metadata:nil];

[self.healthStore saveObject:run withCompletion:^(BOOL success, NSError *error) {
}];

Спасибо

1 Ответ

0 голосов
/ 01 ноября 2019

Apple не дает вам возможности сделать это «из коробки», если у вас нет Apple Watch.

Приложения, такие как Strava и Nike Run, рассчитывают сожженные калории на основе таких факторов, как:

  • пол
  • вес тела
  • расстояние пробега
  • продолжительность пробега

Вы можете искать формулы в Google или дажев другом месте здесь, в сети Stack Exchange: https://fitness.stackexchange.com/questions/15608/energy-expenditure-calories-burned-equation-for-running, которая, в свою очередь, ссылается на хорошие ресурсы в Интернете

...