AutoDispose解决RxJava内存泄漏
依赖项:
网站建设哪家好,找成都创新互联!专注于网页设计、网站建设、微信开发、小程序设计、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了海阳免费建站欢迎大家使用!
//AutoDispose解决RxJava内存泄漏
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha2'
implementation 'com.uber.autodispose:autodispose:1.1.0'
implementation 'com.uber.autodispose:autodispose-android:1.1.0'
implementation 'com.uber.autodispose:autodispose-android-archcomponents:1.1.0'
implementation 'com.uber.autodispose:autodispose-android-archcomponents-test:1.1.0'
代码样例:
Observable.interval(1, TimeUnit.SECONDS)
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
//AutoDispose RxJava内存泄漏处理
//.as(AutoDispose.autoDisposable(AndroidLifecycleScopeProvider.from(SecondActivity.this, Event.ON_DESTROY)))
.subscribe(new Observer() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(Long aLong) {
}
@Override
public void onError(Throwable e) {
}
@Override
public void onComplete() {
}
});
使用AndroidStudio中的profile进行内存分析查看:![](/upload/otherpic44/177482.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
点击这个图标启动app,选择你的手机,对应包名,双击MEMORY视图
查看使用AutoDispose于不使用的区别看对应类内存是否回收了
![](/upload/otherpic44/177483.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)
注意点:
项目依赖的是下面这两个,否则直接使用support-v7中的AppCompatActivity调用接口时类型匹配不上
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.constraintlayout:constraintlayout:2.0.0-alpha2'
```
网站栏目:AutoDispose解决RxJava内存泄漏
网址分享:http://cdiso.cn/article/igjcod.html