iphone - CMMotionManager - 专门使用 CMMotionManager 获得航向

标签 iphone ios ipad cmmotionmanager

我已经设法使用 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);
}];

问题是这个 block 只运行了几秒钟就停止了。

有没有专门使用CMMotionManager测量航向的例子?

谢谢。

最佳答案

显然,最好的方法是使用 CoreLocation,直到 Apple 创建合适的文档。

关于iphone - CMMotionManager - 专门使用 CMMotionManager 获得航向,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15818527/

相关文章:

iphone - SentTestCase 不会将 UnitTest 失败突出显示为代码中的错误

iphone - 向 iPhone 发送全屏、消失的短信

ios - 如何与在父 UIView 边界之外绘制的子 UIView 进行交互?

ios - 旋转 UIKit 元素而不弄乱框架

objective-c - 得到一个 NSException 不知道为什么

iphone - UITextView行高问题

iphone - 导致崩溃的通知监听器

iPhone GCC/LLVM GCC 还是 LLVM?

iphone - objective-c 类的默认基类

php - AES256 从 iOS 到 PHP