有陀螺仪的情况下指南针不准问题

[DESCRIPTION]

有陀螺仪的情况下指南针不准,而没有陀螺仪的情况下却是准确的。

 这个问题的原因一般是由于android的sensormanager那边在有陀螺仪的情况下虚拟出了一个orientation sensor,同时去掉mag sensor提供的orientation sensor,但android提供的这个sensor可能并不一定准确,所以出现了上述的情况。解决方法是可以尝试去掉android虚拟出来的orientation sensor,用mag sensor自带的orientation sensor。

参考修改代码:SensorService.cpp:void SensorService:nFirstRef(){if (hasGyro) {```````// these are optional// registerVirtualSensor( new OrientationSensor() ); //去掉这里registerVirtualSensor( new CorrectedGyroSensor(list, count) );}········if (hasGyro &&(virtualSensorsNeeds & (1<= 0) {

// mUserSensorList.removeItEMSAt(orientationIndex); //去掉这里

}

}

}

来源:一牛网论坛

你可能感兴趣的:(有陀螺仪的情况下指南针不准问题)