Получайте одновременно несколько данных датчиков в Android

Теперь я пытаюсь создать приложение для мониторинга вибрации. Я использую акселерометр для завершения задания, когда записанное ускорение превышает определенный порог, я называю его триггером. Когда есть триггер, я хочу зарегистрировать данные о ускорении, магнитном поле, уровне света (от разных датчиков) в момент запуска до файла.

Проблема в том, что: я могу получать данные от отдельного датчика, но не мог понять, как получить данные от нескольких датчиков одновременно. Например: я могу настроить датчик для мониторинга изменения акселерометра, когда я записываю данные ускорения, могу ли я также получить данные от других датчиков в одно и то же время?

Заранее спасибо.

Да, вы можете сделать это следующим образом:

private SensorManager manager; private SensorEventListener listener; manager = (SensorManager) this.getSystemService(Context.SENSOR_SERVICE); listener = new SensorEventListener() { @Override public void onAccuracyChanged(Sensor arg0, int arg1) { } @Override public void onSensorChanged(SensorEvent event) { Sensor sensor = event.sensor; if (sensor.getType() == Sensor.TYPE_ACCELEROMETER) { ... } else if (sensor.getType() == Sensor.TYPE_GYROSCOPE) { ... } } } manager.registerListener(listener, manager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_GAME); manager.registerListener(listener, manager.getDefaultSensor(TYPE_GYROSCOPE), SensorManager.SENSOR_DELAY_GAME);