aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--main/src/cgeo/geocaching/CgeoApplication.java6
-rw-r--r--main/src/cgeo/geocaching/sensors/OrientationProvider.java2
2 files changed, 7 insertions, 1 deletions
diff --git a/main/src/cgeo/geocaching/CgeoApplication.java b/main/src/cgeo/geocaching/CgeoApplication.java
index cbe5cad..eada725 100644
--- a/main/src/cgeo/geocaching/CgeoApplication.java
+++ b/main/src/cgeo/geocaching/CgeoApplication.java
@@ -94,6 +94,12 @@ public class CgeoApplication extends Application {
public Observable<? extends Float> call(final Throwable throwable) {
return OrientationProvider.create(CgeoApplication.this);
}
+ }).onErrorResumeNext(new Func1<Throwable, Observable<? extends Float>>() {
+ @Override
+ public Observable<? extends Float> call(final Throwable throwable) {
+ Log.e("Device orientation will not be available as no suitable sensors were found");
+ return Observable.never();
+ }
}).replay(1).refCount().doOnNext(new Action1<Float>() {
@Override
public void call(final Float direction) {
diff --git a/main/src/cgeo/geocaching/sensors/OrientationProvider.java b/main/src/cgeo/geocaching/sensors/OrientationProvider.java
index eb71e17..83e0638 100644
--- a/main/src/cgeo/geocaching/sensors/OrientationProvider.java
+++ b/main/src/cgeo/geocaching/sensors/OrientationProvider.java
@@ -48,7 +48,7 @@ public class OrientationProvider extends LooperCallbacks<Float> implements Senso
Log.d("OrientationProvider: starting the orientation provider");
sensorManager.registerListener(this, orientationSensor, SensorManager.SENSOR_DELAY_NORMAL);
} else {
- // subscriber.onError(new RuntimeException("orientation sensor is absent on this device"));
+ subscriber.onError(new RuntimeException("orientation sensor is absent on this device"));
}
}