首先获取SensorManager的实例
SensorManager 是系统所有传感器的管理器,有了它的实例之后就可以调用getDefaultSensor()方法来得到任意的传感器类型了
// // 获取传感器管理服务
mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
// SensorManager 是系统所有传感器的管理器,有了它的实例之后就可以调用getDefaultSensor()方法来得到任意的传感器类型了
Sensor sensor = mSensorManager.getDefaultSensor(Sensor.TYPE_LIGHT);
// 接下来我们需要对传感器输出的信号进行监听,这就要借助 SensorEventListener 来实现了。
// SensorEventListener 是一个接口,其中定义了 onSensorChanged()和onAccuracyChanged()这两个方法
SensorEventListener listener = new SensorEventListener() {
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
@Override
public void onSensorChanged(SensorEvent event) {
}
};
// 当传感器的精度发生变化时就会调用 onAccuracyChanged()方法,当传感器监测到的数值发生变化时就会调用 onSensorChanged()方法。可以看到 onSensorChanged()
// 方法中传入了一个 SensorEvent 参数&#