Есть ли способ получить данные с нескольких датчиков в Android

Я пытаюсь получить данные акселерометра и ориентации. В настоящее время я создал AccelerometerManager и OrientationManager. Они оба делают одно и то же; реализовать SensorEventListener и получать данные из values ​​[] в слушателях onSensorChanged ().

Есть ли более простой способ сделать это? Кажется, что иметь 2 обработчика с повторяющимся кодом - это нереально. Есть ли способ получить доступ к массиву values ​​[] с объединенными данными акселерометра и ориентации вместе?

Из-за двух обработчиков мне также приходится делать это:

    orientationManager = new OrientationManager(this);
    orientationSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
    orientationSensorManager.registerListener(orientationManager, 
            orientationSensorManager.getDefaultSensor(Sensor.TYPE_ORIENTATION), 
            SensorManager.SENSOR_DELAY_GAME);

    accelerometerManager = new AccelerometerManager(this);
    accelerometerSensorManager = (SensorManager) getSystemService(SENSOR_SERVICE);
    accelerometerSensorManager.registerListener(accelerometerManager, 
            orientationSensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), 
            SensorManager.SENSOR_DELAY_GAME);
7
задан trinth 3 December 2010 в 07:25
поделиться