RxJava是大火的框架,但是由于设计巧妙,加上各种各样的操作符,导致入门门槛较高。不了解内在机理,单纯记忆操作符的表现,不仅在不同条件下同一操作符会有不同表现(例如背压在有无切线程的不同表现),难以记忆,还容易弄混。
作为Rxjava系列第一篇,只分析如下最简单的使用,不涉及任何多余的操作符
Observable.create(new ObservableOnSubscribe<Integer>() {
@Override
public void subscribe(ObservableEmitter<Integer> emitter) throws Exception {
emitter.onNext(3);
emitter.onNext(2);
emitter.onNext(1);
emitter.onComplete();
}
}).subscribe(new Observer<Integer>() {
@Override
public void onSubscribe(Disposable d) {
Log.d("Aoli","onSubscribe");
}
@Override
public void onNext(Integer integer) {
Log.d("Aoli",integer + "");
}
@Override
public void onError(Throwable e) {
Log.d("Aoli","onError");
}
@Override
public void onComplete() {
Log.d("Aoli&#