Retrofit.makeRequest()在RxJava中抛出NetworkOnMainThreadException

时间:2016-08-13 13:14:59

标签: android rx-java retrofit2 rx-android

我正在尝试使用RxJava进行Retrofit阻塞调用,如下所示:

remote = Single.fromCallable(new Callable<List>() {
                    @Override
                    public List call() {
                        try {
                             Response<ApiResponse> execute = makeRequest().execute();
                        } catch (Exception e) {
                            e.printStackTrace();
                            return new ArrayList();
                        }
                    }
                    ...

我正在订阅:

remote
        .subscribeOn(Schedulers.io())
        .observeOn(AndroidSchedulers.mainThread());

但是调用execute会抛出NetworkOnMainThreadException。

我正在使用

compile 'com.squareup.retrofit2:retrofit:2.1.0'

this问题中,据说该错误已修复,但我仍然可以使用。

我该怎么办才能修复它?

0 个答案:

没有答案