diff options
| author | Samuel Tardieu <sam@rfc1149.net> | 2014-12-17 13:39:22 +0100 |
|---|---|---|
| committer | Samuel Tardieu <sam@rfc1149.net> | 2014-12-17 13:39:36 +0100 |
| commit | 730bad7792727fb20f01d9abe2cc2722633d54e9 (patch) | |
| tree | 28e933740ddb13beff3db99d3924d96aaef2a6fd | |
| parent | 7e36094fea4f1bb9f3d35f3faa732c74f321ba5e (diff) | |
| download | cgeo-730bad7792727fb20f01d9abe2cc2722633d54e9.zip cgeo-730bad7792727fb20f01d9abe2cc2722633d54e9.tar.gz cgeo-730bad7792727fb20f01d9abe2cc2722633d54e9.tar.bz2 | |
fix #4541: some phones do not support SENSOR_DELAY_NORMAL for rotation
| -rw-r--r-- | main/src/cgeo/geocaching/sensors/RotationProvider.java | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/main/src/cgeo/geocaching/sensors/RotationProvider.java b/main/src/cgeo/geocaching/sensors/RotationProvider.java index 4c4eb97..5b5d288 100644 --- a/main/src/cgeo/geocaching/sensors/RotationProvider.java +++ b/main/src/cgeo/geocaching/sensors/RotationProvider.java @@ -62,7 +62,12 @@ public class RotationProvider extends LooperCallbacks<Float> implements SensorEv public void onStart() { if (rotationSensor != null) { Log.d("RotationProvider: starting the rotation provider"); - sensorManager.registerListener(this, rotationSensor, SensorManager.SENSOR_DELAY_NORMAL); + try { + sensorManager.registerListener(this, rotationSensor, SensorManager.SENSOR_DELAY_NORMAL); + } catch (final Exception e) { + Log.w("RotationProvider: unable to register listener", e); + subject.onError(e); + } } else { subject.onError(new RuntimeException("rotation sensor is absent on this device")); } |
