加速度传感器

来源:互联网 发布:手机清除数据会怎样 编辑:程序博客网 时间:2024/04/28 00:39
下面三部   
   onstart()方法中
//1。获取一个传感器管理器        SensorManager manager = (SensorManager) getSystemService(SENSOR_SERVICE);        //2.获取一个加速度传感器        Sensor sensor = manager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);        //3.注册加速度传感器//        SENSOR_DELAY_FASTEST = 0;//        mes *///        SENSOR_DELAY_GAME = 1;//        e user interface  *///        SENSOR_DELAY_UI = 2;//        ble for screen orientation//        SENSOR_DELAY_NORMAL = 3; 参数一:设置传感器监听回调   参数二:监听长安起对象  参数三:传感器更新速度        manager.registerListener(listerner, sensor, SENSOR_DELAY_GAME);
public boolean registerListener(SensorEventListener listener, Sensor sensor,        int samplingPeriodUs) {

private SensorEventListener listerner = new SensorEventListener() {    @Override//当传感器的数值发生变化时调用    public void onSensorChanged(SensorEvent event) {        float[] values = event.values;//长度为3  xyz轴加速度变化        float valueX = values[0]//获取xyz加速度变化        float valueY = values[1];        float valueZ = values[2];        if (valueX > 17 || valueY > 17 || valueZ > 17) {//这个灵敏度测试 适中            long currentTimeMillis = System.currentTimeMillis();            if (currentTimeMillis - lastTime < 1000) {  //设置时间不能 太短  如果不判断会一直执行                return;            }            lastTime = currentTimeMillis;            starAnimation();        }    }    @Override    public void onAccuracyChanged(Sensor sensor, int accuracy) {//传感器的精度发生变化时调用    }};

注意事项⚠️

在退出程序的时候需要解除注册,否则退出之后还会响应事件
onstop()方法中
//解除注册systemService.unregisterListener(listener);


建议
初始化  onstart()方法
释放    onstop()方法



Android传感器类型表

  • 加速度传感器:TYPE_ACCELEROMETER

以m/s2测量它设备所有三个物理轴线方向(x,y,和z)加速度。

  • 周围温度传感器:TYPE_AMBIENT_TEMPERATURE

检测周围空气温度。

  • 重力传感器:TYPE_GRAVITY

测量重力

  • 陀螺仪传感器:TYPE_GYROSCOPE

以rad/s测量设备三个物理轴线方向(x,y,和z)。旋转速度。

  • 光照传感器:TYPE_LIGHT

以lx测量周围的光线级别。

  • 线性加速度传感器:TYPE_LINEAR_ACCELERATION

检测沿着一个轴向的加速度。

  • 磁力传感器:TYPE_MAGNETIC_FIELD

测量周围的三个物理轴线方向的磁场。

  • 方向传感器: TYPE_ORIENTATION

测量设备所有三个物理轴线方向(x,y和x)的旋转角度。

  • 压力传感器:TYPE_PRESSURE

测量周围空气气压

  • 接近传感器:TYPE_PROXIMITY

检测物体与手机的距离

  • 相对湿度传感器:TYPE_RELATIVE_HUMIDITY

检测周围空气相对湿度

  • 旋转矢量传感器:TYPE_ROTATION_VECTOR

用于检测运动和检测旋转。

  • 温度传感器: TYPE_TEMPERATURE


0 0