Следующий фрагмент кода отлично работает при вызове вне блока завершения, но таймер никогда не запускается, когда я устанавливаю его внутри блока. Я не понимаю, почему есть разница:
self.timer = Timer.scheduledTimer(timeInterval: 1,
target: self,
selector: #selector(self.foo),
userInfo: nil,
repeats: true)
Я не использовал собственные ссылки при вызове изначально вне блока, но затем один раз внутри, это требовалось. Однако я снова проверил один и тот же код за пределами блока, и он все еще работает.
Этот блок является обработчиком завершения, который вызывается после запроса разрешения для связанной информации HealthKit
.