我已经设法使用 CLLocationManager 获得指南针航向,但因为我的应用程序已经使用了 CMMotionManager,所以我想只使用 CMMotionManager 来测量航向。
像所有 Apple 模糊文档一样,您必须猜测如何使用他们的 API。
我试图用它来测量航向
[self.motionManager setMagnetometerUpdateInterval:1.0/30.0]; //30 Hz
[self.motionManager startMagnetometerUpdatesToQueue:[NSOperationQueue currentQueue] withHandler:^(CMMagnetometerData *magnetometerData, NSError *error) {
CMMagneticField compass = magnetometerData.magneticField;
NSLog(@"x: %f y:%f z:%f", compass.x, compass.y, compass.z);
}];
问题是这个块只运行了几秒钟然后停止运行。
是否有任何示例说明如何专门使用 CMMotionManager 测量航向?
谢谢。