温度传感器与压力传感器
//温度传感器和压力传感器的使用 public class TemperatureDemo extends Activity{ private SensorManager sensorManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //获取传感器管理者 sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE); //为传感器管理者注册监听器(指明监听哪个传感器和监听速率)NORMAL为标准 sensorManager.registerListener(listener, sensorManager.getDefaultSensor(Sensor.TYPE_AMBIENT_TEMPERATURE), SensorManager.SENSOR_DELAY_NORMAL);//温度传感器 sensorManager.registerListener(listener, sensorManager.getDefaultSensor(Sensor.TYPE_PRESSURE), SensorManager.SENSOR_DELAY_NORMAL);//压力传感器 } //传感器监听器 private SensorEventListener listener=new SensorEventListener() { @Override//传感器改变时调用 public void onSensorChanged(SensorEvent event) { float[] values=event.values;//获取结果 switch (event.sensor.getType()) {//获取触发的传感器类型 case Sensor.TYPE_AMBIENT_TEMPERATURE://温度传感器 Toast.makeText(getApplicationContext(), "当前温度为:"+values[0], 0).show(); break; case Sensor.TYPE_PRESSURE://压力传感器 Toast.makeText(getApplicationContext(), "当前压力为:"+values[0], 0).show(); break; default: break; } } @Override//传感器进度发生改变时调用 public void onAccuracyChanged(Sensor sensor, int accuracy) { } }; @Override protected void onDestroy() { super.onDestroy(); if(sensorManager!=null){ sensorManager.unregisterListener(listener);//取消监听 } } }