diff options
| author | Samuel Tardieu <sam@rfc1149.net> | 2014-08-26 11:46:13 +0200 |
|---|---|---|
| committer | Samuel Tardieu <sam@rfc1149.net> | 2014-08-26 11:46:13 +0200 |
| commit | 41ae891a56181e4685591ba70a867300e04b7cd2 (patch) | |
| tree | 3a699c72ee867271f1a06ebd1ceba0f38369a4cf | |
| parent | 76ddb1439d0e3f060f98c6756b78816083e07215 (diff) | |
| download | cgeo-41ae891a56181e4685591ba70a867300e04b7cd2.zip cgeo-41ae891a56181e4685591ba70a867300e04b7cd2.tar.gz cgeo-41ae891a56181e4685591ba70a867300e04b7cd2.tar.bz2 | |
fix #4215: runtime exception on emulator
| -rw-r--r-- | main/src/cgeo/geocaching/CgeoApplication.java | 6 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/sensors/OrientationProvider.java | 2 |
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")); } } |
