Как считать шаги, хотя телефон без встроенного шагомера - PullRequest
0 голосов
/ 11 октября 2018

Мне нужно посчитать шаги пользователя, используя этот код, и он отлично работает

    SensorManager sManager;
    Sensor stepSensor;

        sManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE);
        stepSensor = sManager.getDefaultSensor(Sensor.TYPE_STEP_DETECTOR);

           sManager.registerListener(this, stepSensor, SensorManager.SENSOR_DELAY_FASTEST);

@Override
    public void onSensorChanged(SensorEvent event) {
        Sensor sensor = event.sensor;
        float[] values = event.values;
        int value = -1;

        if (values.length > 0) {
            value = (int) values[0];
        }


        if (sensor.getType() == Sensor.TYPE_STEP_DETECTOR) {
steps++;  }
            }
        }
    }

, но в некоторых устройствах

stepSensor = sManager.getDefaultSensor(Sensor.TYPE_STEP_DETECTOR);

возвращает ноль, я искал об этом и обнаружил, чтоэто устройство может не иметь шагомер

, так как я могу обнаружить шаги в этом случае?

1 Ответ

0 голосов
/ 11 октября 2018

Попробуйте этот код

Сначала импортируйте `реализацию 'com.github.orangegangsters: sensortep: 1.4.2@aar'

и следуйте моему репозиторию:

https://gitlab.com/jonathan123vazna/podometersteeps

Хороший код.`

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...