Как получить данные CMPedometer в пошаговом подсчете?

В настоящее время я работаю в приложении для здравоохранения, которое требует отслеживать количество шагов пользователя, когда они ходят, держа свой телефон. Я использовал CoreMotion рамки и CMPedometer отслеживать количество шагов, и он работает нормально. Однако функция обратного вызова не будет вызывать каждый счетчик шагов. Он объединяет все данные и возвращает количество шагов как, например, 10 шагов в целом. Чтобы быть конкретным,

startUpdates(from start: Date, withHandler handler: @escaping CMPedometerHandler)

не вызывается для каждого счетчика шагов (для счетчика шагов 1, счетчика шагов 2 и т. д.). Он объединяет данные и вызывается только один раз, добавляя общее количество шагов.

Есть ли способ вызвать метод для каждого шага ходьбы?

1 ответ

Использование startPedometerEventUpdatesWithHandler:

Код:

[self.pedometer startPedometerEventUpdatesWithHandler:^(CMPedometerData * _Nullable pedometerData, NSError * _Nullable error) {
        // this block is called for each live update
   }];
Другие вопросы по тегам