SensorManager.getRotationMatrix(...)功能在Android 3.0+中不起作用。我在运行android 2.x的各种手机/平板电脑上运行了以下代码,它运行得很好。
public void onSensorChanged(SensorEvent event) {
float[] magnetic = event.values;
if( accelerometer != null ) {
float[] array = new float[9];
SensorManager.getRotationMatrix(array, null, accelerometer, magnetic);
// in 3.0+, 'array' contains all 0's here, which is bad
SensorManager.getOrientation(array, orientation);
}
}
答案 0 :(得分:0)
事实证明,磁性[0]包含一个介于0到360之间的数字,包含轴承。