android - 关于retrofit2.0框架的一点小问题?

浏览:42日期:2022-11-09

问题描述

在Activity中有个网络请求,但是在网络请求没有完成就已经将当前的Activity干掉了,但是网络请求依然存在,由于网络请求我放在了Present类里了(就是MVP中的Present层),并且请求依然存在,会保留已经销毁的Activity的引用,这样会造成内存泄漏,我现在想关闭这个请求,该如何关闭?或者说还有什么方法可以解决这个问题???跪求大神们的解答!!!

问题解答

回答1:

只使用 Retrofit2,可以使用 Call 对象取消,取消一个Call

如果是 Retrofit2 和 RxJava2 配合使用,获取 Flowable 返回的 Disposable 对象取消回答2:

在Activity的onDestroy中使用Subscription的unsubscribe()方法。

相关文章: