@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//通过服务拿到传感器经理.getSystemService(SENSOR_SERVICE),要强类型转换.
SensorManager systemService = (SensorManager) getSystemService(SENSOR_SERVICE);
//得到传感器的所有集合,传感器经理对象.getSensorList集合,参数就是ALL
List<Sensor> sensorList = systemService.getSensorList(Sensor.TYPE_ALL);
//打印信息.sen.getName获取名字
for (Sensor sen:sensorList) {
Log.e("光传感器","光传感器的名称:"+sen.getName());
}
//通过传感器经理得到光传感器的对象.getDefaultSensor 参数:LiGht
Sensor defaultSensor = systemService.getDefaultSensor(Sensor.TYPE_LIGHT);
//创建一个自己的传感器监听器
MySensorManager mySensorManager=new MySensorManager();
//注册传感器监听registerListener,参数:1.传感器监听器 2.传感器对象 3.决定采样的敏感度.SensorManager.SENSOR_DELAY_NORMAL:正常采样
systemService.registerListener(mySensorManager,defaultSensor,SensorManager.SENSOR_DELAY_NORMAL);
}
/**
* 自定义一个类实现SensorEventListener,做为传感器监听
*/
private class MySensorManager implements SensorEventListener{
//当传感器数据变化的调用的方法
@Override
public void onSensorChanged(SensorEvent event) {
//通过传感器事件,得到光线值.event.values[0]
float value = event.values[0];
//打印出光线值.
Log.e("光传感器","光传感器的光线值:"+value);
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//通过服务拿到传感器经理.getSystemService(SENSOR_SERVICE),要强类型转换.
SensorManager systemService = (SensorManager) getSystemService(SENSOR_SERVICE);
//得到传感器的所有集合,传感器经理对象.getSensorList集合,参数就是ALL
List<Sensor> sensorList = systemService.getSensorList(Sensor.TYPE_ALL);
//打印信息.sen.getName获取名字
for (Sensor sen:sensorList) {
Log.e("光传感器","光传感器的名称:"+sen.getName());
}
//通过传感器经理得到光传感器的对象.getDefaultSensor 参数:LiGht
Sensor defaultSensor = systemService.getDefaultSensor(Sensor.TYPE_LIGHT);
//创建一个自己的传感器监听器
MySensorManager mySensorManager=new MySensorManager();
//注册传感器监听registerListener,参数:1.传感器监听器 2.传感器对象 3.决定采样的敏感度.SensorManager.SENSOR_DELAY_NORMAL:正常采样
systemService.registerListener(mySensorManager,defaultSensor,SensorManager.SENSOR_DELAY_NORMAL);
}
/**
* 自定义一个类实现SensorEventListener,做为传感器监听
*/
private class MySensorManager implements SensorEventListener{
//当传感器数据变化的调用的方法
@Override
public void onSensorChanged(SensorEvent event) {
//通过传感器事件,得到光线值.event.values[0]
float value = event.values[0];
//打印出光线值.
Log.e("光传感器","光传感器的光线值:"+value);
}
@Override
public void onAccuracyChanged(Sensor sensor, int accuracy) {
}
}