Вы можете попробовать объединить 2 функции: timeout
и onErrorReturn
.
Observable.create<Boolean> {
// use emitter here
}
.timeout(3, TimeUnit.SECONDS)
.onErrorReturn { if (it is TimeoutException) false else throw it }
.subscribe { println("onNext $it") }
Обновлен фрагмент после уточнения. repeatWhen
будет подписываться на Observable.
Observable.create<Boolean> {
// use emitter here
}
.timeout(3, TimeUnit.SECONDS)
.onErrorReturn { if (it is TimeoutException) false else throw it }
.repeatWhen { it }
.subscribe { println("onNext $it") }