我正在使用 Retrofit 2.0 和 Rx-android 来加载我的 API。我遵循该部分RxJava Integration with CallAdapter
at 这个网站而且效果很好。但是,我不知道如何取消可观察对象的加载请求。请帮我出个主意。
取消 RxJava Observable 执行的唯一方法 - 取消订阅。 RxJavaCallAdapter 会将取消委托给 okhttp 客户端。
所以,你只需这样做:
Subscription subscription = getObservable().subscribe();
//When you want to stop execution
subscription.unsubsribe();
你可以查看代码here。具体来说,这些行如果代码
final Call<T> 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();
}
}));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)