CompositeDisposable不会第二次调用内部的Observable方法,而是在通过断点调试项目时调用

时间:2019-01-04 08:19:46

标签: android

我处理片段和MVP模式。当我在presenter中调用method来获取数据时,它在第一次工作并且视图显示了列表,但是当我转到其他片段以更改列表对象属性并返回时,该片段为空,因为未将服务器请求建立为日志在onNext中不显示数据。 但是,当我放置断点并检查步骤时,一切正常,并且可以正常工作。

当我放置断点并检查步骤时,一切正常,并且应该可以正常工作。

 @Override
public void onServerCategoryNotification(int page, int size, String sort, String order) {//do not pay attention to parameters
    Log.w("accepted", "onServerCategoryNotification");//reads everytime!!!
    getCompositeDisposable().add(
            getInteractor().doServerCategoryNotification(page, size, sort, order)
                    .observeOn(getSchedulerProvider().ui())
                    .subscribeOn(getSchedulerProvider().io())
                    .subscribe(apiResponse -> {
                        Log.d("accepted", apiResponse.body().toString());//reads only first time!!!
                        if (apiResponse.isSuccessful())
                            getMvpView().getCategoryNotification(apiResponse.body());
                        else
                            getMvpView().onError("Internal server error");
                    }, error -> {
                        getMvpView().onError(error.getMessage());
                    })
    );
}     

每次调用此方法时,它应该返回一个数据

0 个答案:

没有答案