rxjava2/rxjava3+AutoDispose的使用优雅解决RxJava内存泄漏
rxjava2/rxjava3+AutoDispose的使用优雅解决RxJava内存泄漏
github 地址: 添加 依赖 目前新版本
// AutoDispose api com.uber.autodispose2:autodispose:2.1.1 api com.uber.autodispose2:autodispose-androidx-lifecycle:2.1.1 //api com.uber.autodispose:autodispose-android-archcomponents:2.1.0
rxjava2 版本中如下使用:
// 在Activity/fragment中使用 Observable .as(AutoDispose.autoDisposable(AndroidLifecycleScopeProvider.from(this)) .subscribe(s -> ...); //主要添加如下代码: as(AutoDispose.autoDisposable(AndroidLifecycleScopeProvider.from(lifecycleOwner))
rxjava3 版本中如下使用: RxJava3 里面已经删除 as 方法,是 to 方法代替
Observable.subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .to(AutoDispose.autoDisposable(AndroidLifecycleScopeProvider.from(activity)))
以上是具体使用方法,关于AutoDispose的原理等可在github中 研究
上一篇:
Python 安装包管理工具 pip