我们在Android经常使用一些传感器,以下是API定义的传感器常量:
以加速传感器为例,我们通常遵循以下步骤。
首先,获得相应的传感器管理器。
sensorManager=(SensorManager)getSystemService(Context.SENSOR_SERVICE);
其次,为传感器注册监听器,我们在这里使用加速传感器。
Sensor sensor = ensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
sensorManager.registerListener(this,sensor , SensorManager.SENSOR_DELAY_FASTEST);
第一个参数是相应的加速传感器属性;第三个参数是模式的选择,在这里DELAY_FASTEST
表示获得传感器数据的速度,这里所写的表示尽可能快的接收数据。除此之外,我们还有如下几种模式:
SENSOR_DELAY_GAME 建议使用传感器开发游戏。 一般来说,大多数实时游戏这个级别。
SENSOR_DELAY_NORMAL 默认获取传感器数据的速度。标准延迟,对于一般的益智游戏或EASY边界游戏可以使用,但采样率过低可能会导致一些赛车游戏跳帧。
SENSOR_DELAY_UI 若使用传感器更新UI, 建议使用该值。
然后,当我们使用监控传感器时。我们需要实现具体的监控方法Android传感器的应用主要取决于android.hardware.SensorEventListener接口:
Public class UpdateService extends Service implements SensorEventListener {
public void onSensorChanged(SensorEvent event) {
}
}
当传感器值发生变化时,执行onSensorChanged这里就不赘述具体实现的方法了。