我正在使用RxJava2和Retrofit。在我的片段中,我请求上传一个本地文件:
Disposable disposable = mApi.requestUpload(file)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(response -> {
toast("success");
}, throwable -> {
toast("failed");
});
mCompositeDisposable.add(disposable);
然后,清除
onDestroyView()
中的所有一次性物品@Override
public void onDestroyView() {
mCompositeDisposable.clear();
super.onDestroyView();
}
但是我使用Charles来查看所有请求,并在完成片段之后发现该请求仍在执行。一段时间后,文件仍成功上传。
片段关闭时如何取消通话?
最佳答案
使用disposable.dipose()
取消通话。
关于android - 如何取消RxJava2的通话?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53244608/