CMDeviceMotion不提供态度信息

时间:2011-08-18 01:53:47

标签: ios ipad gyroscope

出于某种原因,我的iPad2没有提供运动态度信息。我正在按照人们的说法做AFAIK,但仍然......没有数据。

float angle = 0;
CMDeviceMotion *deviceMotion;      
CMAttitude *attitude;
deviceMotion = motionManager.deviceMotion;  
if (deviceMotion) {
    attitude = deviceMotion.attitude;

    [attitude multiplyByInverseOfAttitude:referenceAttitude];
    angle = [attitude roll];
} else {
    NSLog (@"Cannot get angles.");
}

在我的代码中,我执行此操作:

    motionManager = [[CMMotionManager alloc] init];
    if (motionManager.gyroAvailable) {          
        [motionManager startGyroUpdates];
    } 

然而,我从未得到过这个角度。帮助

1 个答案:

答案 0 :(得分:3)

如果你使用设备动作更新,你只会得到态度,即你必须要求初始化:

if (![motionManager isDeviceMotionActive]) {
    [motionManager startDeviceMotionUpdates];
}

前往后台stopDeviceMotionUpdates