Как проверить, работает ли CMMotionManager?

У меня есть следующий быстрый код, и я попытался проверить, работает ли CMMotionManager, но каждый раз, когда я использую жест встряхивания на симуляторе, результатом является не то, что я ожидаю, а уведомление об отмене привязки.

let manager = CMMotionManager()

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    if manager.deviceMotionAvailable {
        manager.deviceMotionUpdateInterval = 0.02
        manager.startDeviceMotionUpdatesToQueue(NSOperationQueue.mainQueue()) {
            [weak self] (data: CMDeviceMotion?, error: NSError?) in

            if data?.userAcceleration.x < -2.5 {
                self?.resLabel.text = "Shaked"
            }
        }
    }
}

1 ответ

Симулятор не моделирует движения. Вы должны использовать физическое устройство для тестирования чего-либо с CMMotionManager.

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