SensorManager TYPE_STEP_COUNTER获取值而不触发事件

时间:2014-06-20 17:34:43

标签: android service sensormanager

我使用这段代码来获取android 4.4.2设备上的步骤。

mSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
mStepCounter = mSensorManager.getDefaultSensor(Sensor.TYPE_STEP_COUNTER);

mSensorManager.registerListener(mSensorEventListenerCounter,
            mStepCounter, SensorManager.SENSOR_DELAY_NORMAL);

我使用EventListener在应用程序运行时获取值。现在我想在启动应用程序时获取init步骤值。因为计数器仅在重启设备时从0开始。因此,在我的情况下,值总是结束。对于计算,我需要知道起始值。

这是我在运行时使用的代码,用于在更改时获取值。

private SensorEventListener mSensorEventListenerCounter = new SensorEventListener() {

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

@Override
  public void onSensorChanged(SensorEvent event) {
    value = event.values[0];
  }
};

有没有办法抓住价值,而不是通过摇动手机模仿一步来触发事件?

感谢。

0 个答案:

没有答案