Как читать датчик давления каждые х минут?

У меня есть эта функция в моем сервисе барометра:

  public void StartHpsUpdates()
    {
        var x = (SensorDelay)125000000;
        var d = 125000000;
        sm.RegisterListener(this, _pressure, x, d);
    }

это должно читать данные датчика каждые 125 секунд.

У меня также есть обработчик событий

    public void OnSensorChanged(SensorEvent e)
    {
        this.SensorChanged(this, new SensorChangedEventArgs(e));
        var hps = e.Values[0];
        Log.Debug(logTag, String.Format("Hps is {0}",  hps));
    }

который печатает данные на консоль, для целей тестирования. Но вместо одного чтения данных каждые 2 минуты, в консоли я получаю сотни чтений каждые 30-40 секунд, что-то вроде этого

11-15 11:09:09.501 D/LocationService(25609): Hps is 1002,648
11-15 11:09:09.511 D/LocationService(25609): Hps is 1002,653
11-15 11:09:09.531 D/LocationService(25609): Hps is 1002,66
11-15 11:09:09.541 D/LocationService(25609): Hps is 1002,667
11-15 11:09:09.551 D/LocationService(25609): Hps is 1002,67
11-15 11:09:09.551 D/LocationService(25609): Hps is 1002,676
11-15 11:09:09.561 D/LocationService(25609): Hps is 1002,677
11-15 11:09:09.571 D/LocationService(25609): Hps is 1002,674

Я пытался найти решение, но пока не повезло, похоже, что никто не использует датчик давления. Может кто-нибудь указать мне, как это сделать?

0 ответов

Другие вопросы по тегам