Пакет здоровья Flutter 6.0.0 неправильные значения HealthDataType.ACTIVE_ENERGY_BURNED и HealthDataType.DISTANCE_WALKING_RUNNING на iOS

Пакет: Flutter health 6.0.0 Устройство: Iphone 12 pro Версия iOS: 16.5

HealthDataType.ACTIVE_ENERGY_BURNED и HealthDataType.DISTANCE_WALKING_RUNNING считывают неправильные цифры о состоянии здоровья Apple и возвращают более высокое значение.

Ниже приведен код, который я использовал для запроса этих двух типов.

      final types = [HealthDataType.ACTIVE_ENERGY_BURNED, HealthDataType.DISTANCE_WALKING_RUNNING];

var now = DateTime.now();
var midnight = DateTime(now.year, now.month, now.day);

var healthDataList = await health.getHealthDataFromTypes(
  midnight,
  now,
  types,
);
final cleanData = HealthFactory.removeDuplicates(healthDataList);

double energy = 0;
double distance = 0;

for (final data in cleanData) {
  if (data.type == HealthDataType.ACTIVE_ENERGY_BURNED) {
    energy += double.parse(data.value.toJson()['numericValue']);
  } else if (data.type == HealthDataType.DISTANCE_WALKING_RUNNING) {
    distance += double.parse(data.value.toJson()['numericValue']);
  }
}

На Android работает нормально, что я делаю не так?

0 ответов

Другие вопросы по тегам