No se puede 'observar en' hilo principal con RxKotlin

Estoy tratando de observar observable en el hilo principal usando:

// Kotlin Code Observable .observeOn(AndroidSchedulers.mainThread()) 

pero estoy obteniendo el siguiente error:

  Type Mismatch: Requinetworking: rx.Scheduler! Found: io.reactivex.Scheduler! 

El Observable al que me suscribo pertenece a una Biblioteca que está escrita en Java y, por lo tanto, usa RxJava.

¿Estoy siendo estúpido y me estoy perdiendo algo? Estoy desconcertado: $

Gracias por adelantado 🙂

  Requinetworking: rx.Scheduler! 

Requinetworking significa que la firma es Observable.observeOn(rx.Scheduler)

  Found: io.reactivex.Scheduler! 

Found significa que la firma es io.reactivex.Scheduler AndroidSchedulers.mainThread()

Esto significa que el Observable es un RxJava 1 observable, mientras que la versión RxAndroid utilizada está construida para RxJava 2. Como mencionó que el observable es provisto por una biblioteca, significa que la biblioteca está construida usando RxJava 1.

Tienes 3 opciones para arreglar esto:

  1. Averiguar si la biblioteca en cuestión tiene una versión RxJava 2, o contribuir con esas actualizaciones al proyecto usted mismo.
  2. Utilice akarnokd / RxJava2Interop para convertir el antiguo Observable a RxJava 2. ( RxJavaInterop.toV2Observable(Observable); )
  3. Cambie las otras dependencies a RxJava 1.

por favor incluya esto en su import gradle

rxandroid_version = "2.0.1"

implementación "io.reactivex.rxjava2: rxandroid: $ rxandroid_version"

agregar esto a su proyecto

import io.reactivex.android.schedulers.AndroidSchedulers

  • RxJava2 Tal vez devuelva Observable vacío si no hay elemento
  • Cómo comprimir algunos observables en lenguaje Kotlin con RxAndroid
  • No se puede cambiar el text de ActionMenuItemView con RxKotlin
  • ¿Cómo corotines de Kotlin son mejores que RxKotlin?
  • ¿Puedo crear un método de extensión Kotlin para agregar una suscripción rxJava a una suscripción compuesta?
  • RxJava- Gire Observable en Iterator, Stream o Sequence
  • ¿Cómo hacer un grupo? ¿Por qué coleccionar usando RxJava y Kotlin?
  • Inyectar constructor y object complementario
  • RxJava (Kotlin), Observable.amb y PublishSubject no están disparando
  • Obtiene N últimos objects emitidos por observables en RxJava2
  • Kotlin con stack RxKotlinFX da un error de class de acceso