// 获取传感器管理者对象
SensorManager mSensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
// 获取指定的传感器 加速度传感器
Sensor sensor = mSensorManager.getDefaultSensor(int type);
这个type就是传感器的类型
Sensor.TYPE_ACCELEROMETER
Sensor.TYPE_ORIENTATION
Sensor.TYPE_MAGNETIC_FIELD
Sensor.TYPE_AMBIENT_TEMPERATURE
Sensor.TYPE_LIGHT
Sensor.TYPE_PRESSURE
public boolean registerListener(SensorEventListener listener, Sensor sensor, int samplingPeriodUs);
samplingPeriodUs 采样频率支持以下几个频率值
SensorManager.SENSOR_DELAY_FASTEST
最快,延迟最小,比较消耗电量,由于传递的为原始数据,如果算法处理不好将会影响应用的性能
SensorManager.SENSOR_DELAY_GAME
适合游戏的频率,在一般实时性要求的应用上适合使用这种频率。
SensorManager.SENSOR_DELAY_NORMAL
正常的频率,实时性要求不是很高的时候适合这种频率。
SensorManager.SENSOR_DELAY_UI
适合普通用户界面的频率,这种模式比较省电,而且系统开销也很小,但是延迟较大,适合在普通的小程序中使用
通过以上简单的三个步骤,就可以利用手机自带的传感器获取到相应的传感器数据,进行开发了(硬件必须支持),后续我会针对各个传感器单独写Demo,感兴趣的话可以关注一下。
版权声明:本文为博主原创文章,未经博主允许不得转载。所有文章,任何一个技术点,无论是原创还是转载,都是在程序中使用过或者Demo测试过才发表!博主QQ:4878802。
原文地址:http://blog.csdn.net/q4878802/article/details/48112477