Вече споменах този отговор и изглежда, че е свързан с Retrofit v1.
Цел -> Да се намали времето за студен старт, като накарате ObjectMapper да работи върху неосновна нишка. Това изображение показва проследяване на стека, което се случва в основната нишка.
Настройвам:
compile "com.squareup.retrofit2:retrofit:2.1.0"
compile "com.squareup.retrofit2:converter-jackson:2.1.0"
compile "com.squareup.retrofit2:adapter-rxjava:2.1.0"
compile 'io.reactivex:rxjava:1.1.9'
Това е конфигурация за преоборудване
.addCallAdapterFactory(RxJavaCallAdapterFactory.createWithScheduler(Schedulers.io()))
.addConverterFactory(JacksonConverterFactory.create(ObjectMapperFactory.getObjectMapper()))
По-долу е даден типичен пример за осъществяване на мрежово повикване
compatibilityService().isCompatible()
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(response -> { ...});
В рамките на JacksonConverterFactory обектното картографиране изглежда работи в основната нишка.
Какво е решението, без да се отдалечавате от RxJava?
Вероятно свързани публикации