mcharmas / Android-ReactiveLocation

Small library that wraps Google Play Service API in brilliant RxJava Observables reducing boilerplate to minimum.
2.11k stars 312 forks source link

IllegalStateException: more items arrived than were requested #162

Closed IgorB10 closed 6 years ago

IgorB10 commented 7 years ago

OS Version: 6.0.1 Device: SM-J700T reactiveLocation = '0.10@aar'

Fatal Exception: java.lang.IllegalStateException: more items arrived than were requested
       at rx.internal.producers.ProducerArbiter.produced(ProducerArbiter.java:98)
       at rx.internal.operators.OperatorSwitchIfEmpty$ParentSubscriber.onNext(OperatorSwitchIfEmpty.java:91)
       at pl.charmas.android.reactivelocation.observables.location.LocationUpdatesObservable$1.onLocationChanged(LocationUpdatesObservable.java:36)
       at com.google.android.gms.internal.zzceu.zzpR(Unknown Source)
       at com.google.android.gms.internal.zzbfi.zzqE(Unknown Source)
       at com.google.android.gms.internal.zzbfj.handleMessage(Unknown Source)
       at android.os.Handler.dispatchMessage(Handler.java:102)
       at android.os.Looper.loop(Looper.java:148)
       at android.app.ActivityThread.main(ActivityThread.java:7223)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
mcharmas commented 6 years ago

It may be to lack of backpressure. You can apply onBackpressureBuffer().