Я пытаюсь выяснить наиболее точный способ определения, когда телефон движется вперед и подсчитывает его. До сих пор я мог рассчитывать каждый раз, когда ускорение акселерометра y ускоряется выше определенного двойного, но это не очень точно, поскольку все, что мне нужно сделать, чтобы счетчик поднялся, - это наклонить телефон вперед, вместо того, чтобы фактически переместить телефон. Как я могу достичь того, чего хочу? Должен ли я добавлять дополнительные переменные, такие как ось x или z, или мне нужно включить гироскоп или другую функцию в телефоне, которую я в настоящее время не использую? БлагодаряАкселерометр для обнаружения движения телефона
Это мой код до сих пор:
`override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
motionManager.accelerometerUpdateInterval = 0.1
motionManager.startAccelerometerUpdatesToQueue(NSOperationQueue.currentQueue()!, withHandler: { (accelerometerData: CMAccelerometerData?, error: NSError?) -> Void
in
self.outputAccelData(accelerometerData!.acceleration)
if error != nil {
print(error)
}
})
func outputAccelData(acceleration: CMAcceleration) {
if acceleration.y > 0.3 {
countInt += 1
}
count.text = "\(countInt)"
}
Спасибо Я собираюсь попробовать это. Вчера я добавил оси x и z, и это помогло с точностью. –