加速度传感器

 
 
下面三部   
   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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值