当前位置:  开发笔记 > Android > 正文

如何使用retofit2和RxAndroid取消请求

如何解决《如何使用retofit2和RxAndroid取消请求》经验,为你挑选了1个好方法。

我正在使用Retrofit 2.0和Rx-android来加载我的API.我按照这个网站的部分RxJava Integration with CallAdapter,它工作正常.但是,我不知道如何使用可观察对象取消加载请求.请帮忙给我一个主意.



1> Vasilov Artu..:

取消RxJava Observable执行的唯一方法 - 取消订阅它.RxJavaCallAdapter将取消委托给okhttp客户端.

所以,你这么简单就像这样:

Subscription subscription = getObservable().subscribe();

//When you want to stop execution
subscription.unsubsribe();

你可以在这里查看代码.具体来说,如果代码这些行

final Call call = originalCall.clone();

// Attempt to cancel the call if it is still in-flight on unsubscription.
subscriber.add(Subscriptions.create(new Action0() {
  @Override public void call() {
    call.cancel();
  }
}));

推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有