Search code examples
wear-osandroid-sensorssony-smartwatch

Registering Listener for Multiple sensors on Sony SmartWatch 3 taking too long?


I'm registering sensor listener services for three sensors(Gyro,LinearAcceleration,and gravity) the same thing i have tested on LG G watch and MOTO 360 working proper(takes about <1sec) but with Sony SmartWatch 3 it is taking 8-10 seconds for completing the registration process of the sensors (i got to know the time because i'm updating UI once the following call executes.)

sensorManager.registerListener(sensorThread,
                    sensorManager.getDefaultSensor(Sensor.TYPE_GYROSCOPE),
                    Util.SENSOR_DELAY, sensorThread.getHandler());
            sensorManager.registerListener(sensorThread, sensorManager
                    .getDefaultSensor(Sensor.TYPE_LINEAR_ACCELERATION),
                    Util.SENSOR_DELAY, sensorThread.getHandler());
            sensorManager.registerListener(sensorThread,
                    sensorManager.getDefaultSensor(Sensor.TYPE_GRAVITY),
                    Util.SENSOR_GRAVITY, sensorThread.getHandler());

and then in the senson event listener

@Override
    public void onSensorChanged(SensorEvent event) {

        if (event.sensor.getType() == Sensor.TYPE_LINEAR_ACCELERATION) {
            saveLinearAccelerometerData(event);
        } else if (event.sensor.getType() == Sensor.TYPE_GYROSCOPE) {
            saveGyroscopeData(event);
        } else if (event.sensor.getType() == Sensor.TYPE_GRAVITY) {
            saveGravityData(event);
        }

    }

Anybody know what might be the issue with sony watch 3?

Here is the Git project for the sample app that i am testing Following are the readings when running on these three watches: 1.LG G Watch : 1.979s 2.Moto 360 : 1.064s 3.Sony SmartWatch 3 : 10.593s (why??)


Solution

  • there's no support for the soft sensors on sony watch 3