【问题标题】:NetworkOnMainThreadException with retrofit-beta2 and rxjava带有改造-beta2 和 rxjava 的 NetworkOnMainThreadException
【发布时间】:2015-10-28 20:02:27
【问题描述】:

我最近从retroft-beta1 升级,这很有效。我有以下 API 接口:

public interface Service {
    @POST("path")
    Observable<Object> service();
}

还有以下调用:

service.service()
        .observeOn(AndroidSchedulers.mainThread())
        .subscribe();

它会引发 NetworkOnMainThreadException。但这在 retrofit-beta1 中有效。

【问题讨论】:

    标签: android retrofit rx-java


    【解决方案1】:

    从 retrofit-beta2 调用 Observable 方法 now behave synchronously。所以必须使用subscribeOn

    service.service()
            .subscribeOn(Schedulers.io())
            .observeOn(AndroidSchedulers.mainThread())
            .subscribe();
    

    【讨论】:

      猜你喜欢
      • 2017-10-15
      • 2017-09-15
      • 1970-01-01
      • 1970-01-01
      • 2016-03-24
      • 1970-01-01
      • 2021-03-21
      • 1970-01-01
      • 2018-10-05
      相关资源
      最近更新 更多