自定义了一个RxLifecycle类,并实现LifecycleObserver接口与ObservableTransformer接口,因为要在Activity/Fragment 回调onDestroy时取消Rx操作,所以这里只监听了Lifecycle.Event.ON_DESTROY事件,如果需要其他生命周期方法请自己去扩展
public class RxLifecycle
CompositeDisposable compositeDisposable = new CompositeDisposable();
@OnLifecycleEvent(Lifecycle.Event.ON_DESTROY)
private void onDestroy() {
if (!compositeDisposable.isDisposed()) {
compositeDisposable.dispose();
}
}
@Override
public @NonNull ObservableSource
return upstream.doOnSubscribe(disposable -> compositeDisposable.add(disposable));
}
public static
RxLifecycle
lifecycleOwner.getLifecycle().addObserver(lifecy
参考链接
发表评论