Я хочу собрать данные с акселерометра, гироскопа и магнитометра одновременно. В настоящее время я использую сервис SensorManager
, основанный на SensorEvent
. Проблема в том, что я могу получить данные только от одного датчика в данный момент времени. Таким образом, во время t1 я получаю данные от ускорителя, в t2 я получаю данные от гироскопа, а в t3 я получаю данные от магнитометра.
Мой код выглядит следующим образом:
public void onSensorChanged(SensorEvent event) {
if(event.sensor.getType() == Sensor.TYPE_ACCELEROMETER){
sText.setText("S: " + event.sensor.getStringType());
}
else if (event.sensor.getType() == Sensor.TYPE_GYROSCOPE){
sText.setText("S: " + event.sensor.getStringType());
}
else if(event.sensor.getType() == Sensor.TYPE_MAGNETIC_FIELD){
sText.setText("S: " + event.sensor.getStringType());
}
}
Вместо того, чтобы работать с тремя датчиками в 3 разных времени, я хочу иметь возможность собирать данные со всех датчиков за один раз интервал. Это возможно?