Я делаю это приложение, которое работает как шагомер, подсчитывающий шаги, но я хочу, чтобы оно показывало ориентацию для каждого шага.
Что я делаю, так это регистрирую двух слушателей событий и затем для каждого onsensorchanged
событие Я собираю значения sensor.TYPE_ORIENTATION
, чтобы получить угол азимута, и sensor.TYPE_ACCELEROMETER
, где я вижу, задан шаг или нет.
В настоящее время яполучить значения правильно, но я хочу пиковую только азимутальный угол, когда счетчик шагов сделан! Как мне это сделать?
Я предполагаю, что это будет сделано в методе OnSensorChanged
, но яя не понимаю, как просто вызвать датчик ориентации, когда датчик акселерометра активирован и шаг считается ...
Если заглянуть внутрь кода, это будет примерно так: после регистрации двух слушателей, ACCELEROMETER
и ORIENTATION
OnSensorChanged(SensorEvent event)
{
if((event.sensor.getType()==Sensor.TYPE_ACCELEROMETER))
accValues=event.values;
// NOW get the orientation azimuth value at this time..
orientationValues=event.values;
}
Надеюсь, что кто-то может прояснить мне это ..