资讯详情

android传感器灵敏度,Android-Sensor重力感应器灵敏度问题

项目使用经验:

Sensor重传感器的灵敏度调整主要与以下两件事有关

(1)float[] values = SensorEvent.values检测三个值,SensorEvent.values 值的单位是:米/秒^2(加速度)

(2)Sensor的registerListener()中的SensorManager.SENSOR_DELAY_FASTEST参数的设置

直接上代码(这是项目中的传感器类代码):代码中设置参数的说明,

import android.content.Context;

import android.hardware.Sensor;

import android.hardware.SensorEvent;

import android.hardware.SensorEventListener;

import android.hardware.SensorManager;

public class HpSensor {

private IShake mIShake;

private Sensor mSensor;

private SensorManager mSensorManage;

private SensorEventListener mSensorEventListener;

private boolean SensorRegistOK;

public HpSensor(Context aContext, IShake aIShake){

mIShake = aIShake;

mSensorManage = (android.hardware.SensorManager)aContext.getSystemService("sensor");

mSensor = mSensorManage.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);

mSensorEventListener = new android.hardware.SensorEventListener(){

@Override

public void onSensorChanged(SensorEvent event) {

int sensorType = event.sensor.getType();

float[] values = event.values;

if(SensorRegistOK && (sensorType == Sensor.TYPE_ACCELEROMET ER) && (values.length >= 3)){

//values[0]表示三维x轴,values[1]表示y轴,values[2]表示z轴,下面注释的代码灵敏度在某些设备中不高准值较小,15改为12(或较小),去除z轴的校准,即z轴方向的移动不进行逻辑处理,只响应水平的移动

// if((Math.abs(values[0])>15||Math.abs(values[1])>15| |Math.abs(values[2])>15)){

if((Math.abs(values[0])>12||Math.abs(values[1])>12)){

mIShake.doSomething();

}

}

}

@Override

public void onAccuracyChanged(Sensor sensor, int accuracy) {

}

};

}

public void register(){

///第三个参数的值可以直接设置在这里。设置越大,感应频率越高,灵敏度越高。在实际测试中,频率过高会导致系统版本较低的设备传感器无法正常使用,如2.2的设备不能大于3,否则会失效,版本2.3.已经适应了更大的频率

//SensorRegistOK = mSensorManage.registerListener(mSensorEventListener, mSensor, 3);

SensorRegistOK = mSensorManage.registerListener(mSensorEventListener, mSensor,SensorManager.SENSOR_DELAY_UI);

}

public void unregister(){

mSensorManage.unregisterListener(mSensorEventListener, mSensor);

}

}

标签: g37前abs传感器传感器的响应度

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台