我正在尝试在我的应用中实现传感器侦听器,并在sensor or listener is null
行引发mSensorManager.registerListener(sensorEventListener, mSensor, mSensorManager.SENSOR_DELAY_FASTEST);
错误。这是我的完整代码:
dialog.getWindow().setBackgroundDrawable(new ColorDrawable(android.graphics.Color.TRANSPARENT));*/
mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
mSensor = mSensorManager.getDefaultSensor(Sensor.TYPE_GAME_ROTATION_VECTOR);
sensorEventListener = new SensorEventListener() {
public void onSensorChanged(SensorEvent event) {
double xAxis = event.values[0];
TextView textView = (TextView) findViewById(R.id.rotation);
textView.setText(String.valueOf(xAxis));
}
public void onAccuracyChanged(Sensor s, int i) {
}
};
mSensorManager.registerListener(sensorEventListener, mSensor, mSensorManager.SENSOR_DELAY_FASTEST);
我检查过,传感器实际上是null
。我究竟做错了什么?感谢。
编辑:该设备是第二代Moto G。
答案 0 :(得分:9)
原因是设备不支持Sensor.TYPE_GAME_ROTATION_VECTOR
。因此传感器为空。