如何使用Android在Service中读取加速度计数据

时间:2010-11-29 07:21:04

标签: android service accelerometer

通常,在Android中,我们通过覆盖OnSensorChanged函数来读取“活动”中的加速度计数据。

我很好奇我们如何在“服务”中做到这一点。

谢谢, 文森特

2 个答案:

答案 0 :(得分:7)

实际上OnSensorChanged(SensorEvent event)是来自界面SensorEventListener的方法。

所以如果你想在服务中这样做;您创建了扩展 Service 的新课程并实施 SensorEventListener

答案 1 :(得分:1)

您也可以在服务中执行完全相同的操作。

public class BGHndlr extends Handler implements SensorEventListener {

    public BGHndlr(Looper looper) {
        super(looper);
     }

     @Override
     public void handleMessage(Message msg) {
         oSensorManager.registerListener(this, oAcceleroMeter, SensorManager.SENSOR_DELAY_FASTEST);
     }

    @Override
    public void onSensorChanged(SensorEvent event) {
         // do something
    }

    @Override
     public void onAccuracyChanged(Sensor sensor, int i) {}
}