Было заявлено, что приложение, работающее с HKWorkoutSession, будет иметь особые привилегии по сравнению с другими приложениями watchOS 2, поэтому, когда пользователь смотрит на свои Apple Watch, он переходит к представлению, показывающему выполнение тренировки, а не к циферблату.
В настоящее время как на моем устройстве, так и на симуляторе это не так. Если я запускаю HKWorkoutSession, затем оставляю на 5 минут, а затем взаимодействую либо с Apple Watch, либо с Watch Simulator, он отображает циферблат.
Если я затем открою свое приложение, оно будет заморожено, а не завершено (что, как я предполагаю, происходит с другими приложениями). Поскольку пользовательский интерфейс будет обновляться, когда мне нужно будет получить ответ в моем query.updateHandler. Кроме того, если я настрою его на предоставление тактильной обратной связи каждый раз, когда мой query.updateHandler получает новый HKQuantitySample, он будет делать это, поэтому приложение должно работать в фоновом режиме в той или иной форме.
Кто-нибудь еще замечал такое поведение, и я делаю что-то не так или ожидаю чего-то, чего не должен?
Вот как я начинаю свою HKWorkoutSession:
self.workoutSession = HKWorkoutSession(activityType: HKWorkoutActivityType.Other, locationType: HKWorkoutSessionLocationType.Indoor)
self.healthStore.startWorkoutSession(self.workoutSession) {
success, error in
if error != nil {
print("startWorkoutSession \(error)\n")
self.printLabel.setText("startWorkoutSession \(error)")
self.printLabel.setTextColor(UIColor.redColor())
}