写好listener:
private SensorEventListener listener=new SensorEventListener() {
boolean isRecordingMode=false;
@Override
public void onSensorChanged(SensorEvent event) {
float x=event.values[0];
float y=event.values[1];
float z=event.values[2];
...
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
//精度发生变化时执行此方法
}
};
onCreate部分的代码
sensorManager= (SensorManager) getSystemService(Context.SENSOR_SERVICE);
Sensor sensor=sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
sensorManager.registerListener(listener,sensor, sensorManager.SENSOR_DELAY_NORMAL);
要记得unregisterListener
protected void onDestroy() {
super.onDestroy();
if(sensorManager!=null){
sensorManager.unregisterListener(listener);
}
}