From 4dde0bfad21b4e1c558416c8d0b12aa125cd48df Mon Sep 17 00:00:00 2001 From: Samuel Tardieu Date: Tue, 26 Aug 2014 12:48:57 +0200 Subject: Decouple Google Play Services and low-power mode --- main/src/cgeo/geocaching/sensors/RotationProvider.java | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'main/src/cgeo/geocaching/sensors/RotationProvider.java') diff --git a/main/src/cgeo/geocaching/sensors/RotationProvider.java b/main/src/cgeo/geocaching/sensors/RotationProvider.java index fc434bf..a7c5cf0 100644 --- a/main/src/cgeo/geocaching/sensors/RotationProvider.java +++ b/main/src/cgeo/geocaching/sensors/RotationProvider.java @@ -1,6 +1,5 @@ package cgeo.geocaching.sensors; -import cgeo.geocaching.settings.Settings; import cgeo.geocaching.utils.Log; import cgeo.geocaching.utils.RxUtils.LooperCallbacks; @@ -21,12 +20,12 @@ public class RotationProvider extends LooperCallbacks implements SensorEv private final float[] orientation = new float[4]; @TargetApi(19) - protected RotationProvider(final Context context) { + protected RotationProvider(final Context context, final boolean lowPower) { sensorManager = (SensorManager) context.getSystemService(Context.SENSOR_SERVICE); // The geomagnetic rotation vector introduced in Android 4.4 (API 19) requires less power. Favour it // even if it is more sensible to noise in low-power settings. - final Sensor sensor = sensorManager.getDefaultSensor(Sensor.TYPE_GEOMAGNETIC_ROTATION_VECTOR); - if (sensor != null && Settings.useLowPowerMode()) { + final Sensor sensor = lowPower ? sensorManager.getDefaultSensor(Sensor.TYPE_GEOMAGNETIC_ROTATION_VECTOR) : null; + if (sensor != null) { rotationSensor = sensor; Log.d("RotationProvider: geomagnetic (low-power) sensor found"); } else { @@ -68,8 +67,8 @@ public class RotationProvider extends LooperCallbacks implements SensorEv } } - public static Observable create(final Context context) { - return Observable.create(new RotationProvider(context)); + public static Observable create(final Context context, final boolean lowPower) { + return Observable.create(new RotationProvider(context, lowPower)); } } -- cgit v1.1