Как измерить частоту сердечных сокращений за 1 минуту, каждые x минут, независимо от состояния приложений iOS и Watch? - PullRequest
1 голос
/ 22 сентября 2019

Я работаю над приложением Watch, которое требует непрерывного измерения частоты сердечных сокращений в течение 1 минуты, каждые x минут (минимум 30).Данные должны быть отправлены на телефон, а оттуда - на удаленный веб-сервис.

Это должно работать независимо от состояния приложений iOS и WatchOs:

  • Актив
  • Фон
  • Закрыт

Я пытался использовать HKWorkoutSession, но приложение Watch продолжает открываться, когда начинает измеряться пульс (когда начинается минута).Мне нужно, чтобы все было сделано без предупреждения пользователя (есть длинная страница условий, с которой он должен согласиться перед использованием приложения).

Я использую фрагменты кода ниже на часах:

do {
    self.workoutSession = try HKWorkoutSession(healthStore: self.healthStore, 
                                               configuration: self.workoutConfiguration)
    self.workoutSession?.delegate = self
} catch {
    fatalError("Failed to create a workout session object")
}
self.workoutSession?.startActivity(with: Date())

Я использую self.workoutSession?.stopActivity(with: Date()) после 1, чтобы остановить деятельность

...