有人觉得这个温度传感器没啥毛用,也确实,在实际开发过程当中很少有这个需求的,以至于有的手机直接撤销了这个传感器功能,这么说是不是也觉得温度甚至湿度传感器是个鸡肋,这些信息完全可以从网上得到这些数据,可能做天气预报的项目会用到这些小功能吧,这里记录一下,直接贴代码了,因为我的手机不支持温度传感器具体也没有测,但是我相信这段代码是没有问题的,毕竟参考的关完,哈
public class LightActivity extends AppCompatActivity implements SensorEventListener {private SensorManager sensorManager;private Sensor sensor;private TextView mTvLight;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_light);mTvLight=findViewById(R.id.tv_light);// 获取传感器管理者对象sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);// 获取光线传感器对象sensor = sensorManager.getDefaultSensor(Sensor.TYPE_AMBIENT_TEMPERATURE);}@Overrideprotected void onResume() {super.onResume();//添加监听器sensorManager.registerListener(this,sensor,SensorManager.SENSOR_DELAY_NORMAL);}@Overrideprotected void onPause() {super.onPause();if (sensorManager != null) {//解除注册,不再接收任何传感器的更新。sensorManager.unregisterListener(this,sensor);}}@Overridepublic void onSensorChanged(SensorEvent event) {if(event.sensor.getType()==Sensor.TYPE_AMBIENT_TEMPERATURE){float temperature=event.values[0];mTvLight.setText(String.valueOf(temperature)+"°C");}else {ToastUtils.showShort("不支持");}}@Overridepublic void onAccuracyChanged(Sensor sensor, int accuracy) {}
}
更多手机传感器使用请看Android中的传感器(总)