我在开发一个应用程序,需要实时绘制加速度计和陀螺仪的值,分别在两个不同的活动中显示。加速度计正常工作,但是在陀螺仪活动中,随机时间段(大约1到10秒)后,值就不再更新,绘制也停止了。
以下是sensorChanged代码。
public SensorEventListener gyroListener = new SensorEventListener() {
public void onAccuracyChanged(Sensor sensor, int acc) { }
public void onSensorChanged(SensorEvent event) {
float x = event.values[0];
float y = event.values[1];
float z = event.values[2];
seriesx.appendData(new DataPoint(Lastx++,x),true,50);
seriesy.appendData(new DataPoint(Lastx++,y),true,50);
}
};
编辑:传感器的注册和注销:
public void onResume() {
super.onResume();
sensorManager.registerListener(gyroListener, sensor,
SensorManager.SENSOR_DELAY_NORMAL);
}
public void onStop() {
super.onStop();
sensorManager.unregisterListener(gyroListener);
}