为什么我没有收到任何加速度计更新?
Why am I not getting any accelerometer update?
我正在尝试使用 CoreMotion 和 Swift 获取加速度计更新,这是我在 viewDidLoad 中放置的内容:
override func viewDidLoad() {
super.viewDidLoad()
let motionManager = CMMotionManager()
motionManager.accelerometerUpdateInterval = 0.2
motionManager.startAccelerometerUpdatesToQueue(NSOperationQueue.currentQueue()) {
(info:CMAccelerometerData!,error:NSError!) in
if error != nil {
println(error)
}
else {
println("OK")
}
}
}
问题是我的闭包似乎从未被调用(我在控制台中没有任何东西),你知道为什么吗?
问题是您的 CMMotionManager 实例分配给的变量 motionManager
被声明为局部变量(在函数 viewDidLoad
的主体中),这意味着它会当函数完成执行时不存在。因此它的寿命大约是万分之一秒。
好吧,这还不够您的 CMMotionManager 获得很多更新!
我正在尝试使用 CoreMotion 和 Swift 获取加速度计更新,这是我在 viewDidLoad 中放置的内容:
override func viewDidLoad() {
super.viewDidLoad()
let motionManager = CMMotionManager()
motionManager.accelerometerUpdateInterval = 0.2
motionManager.startAccelerometerUpdatesToQueue(NSOperationQueue.currentQueue()) {
(info:CMAccelerometerData!,error:NSError!) in
if error != nil {
println(error)
}
else {
println("OK")
}
}
}
问题是我的闭包似乎从未被调用(我在控制台中没有任何东西),你知道为什么吗?
问题是您的 CMMotionManager 实例分配给的变量 motionManager
被声明为局部变量(在函数 viewDidLoad
的主体中),这意味着它会当函数完成执行时不存在。因此它的寿命大约是万分之一秒。
好吧,这还不够您的 CMMotionManager 获得很多更新!