implementation 'io.reactivex.rxjava2:rxandroid:2.1.1'
implementation 'io.reactivex.rxjava2:rxjava:2.2.9'
- Example 1
StringBuilder str = new StringBuilder();
Observable<String> observaBLE = Observable.create(new ObservableOnSubscribe<String>() {
@Override
public void subscribe(@NonNull ObservableEmitter<String> emitter) throws Exception {
str.append("2. Value Default").append("\n");
setView();
emitter.onNext("Hello Zein");
// emitter.onNext(null); // contoh error
emitter.onComplete();
}
});
Observer<String> obserVER = new Observer<String>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
str.append("1. Loading onSubscribe").append("\n");
setView();
}
@Override
public void onNext(@NonNull String s) {
str.append("3. onNext ").append(s).append("\n");
setView();
}
@Override
public void onError(@NonNull Throwable e) {
str.append("3. onError ").append(e.getMessage()).append("\n");
setView();
}
@Override
public void onComplete() {
str.append("4. Loading onComplete").append("\n");
setView();
}
};
observaBLE.subscribe(obserVER);
- Example 2
StringBuilder str = new StringBuilder();
Observable.create(new ObservableOnSubscribe<String>() {
@Override
public void subscribe(@NonNull ObservableEmitter<String> emitter) throws Exception {
str.append("2. Value Default").append("\n");
setView();
emitter.onNext("Hello Zein");
// emitter.onNext(null); // contoh error
emitter.onComplete();
}
}).subscribe(new Observer<String>() {
@Override
public void onSubscribe(@NonNull Disposable d) {
str.append("1. Loading onSubscribe").append("\n");
setView();
}
@Override
public void onNext(@NonNull String s) {
str.append("3. onNext ").append(s).append("\n");
setView();
}
@Override
public void onError(@NonNull Throwable e) {
str.append("3. onError ").append(e.getMessage()).append("\n");
setView();
}
@Override
public void onComplete() {
str.append("4. Loading onComplete").append("\n");
setView();
}
});
setview();
private void setView(){
TextView tv= findViewById(R.id.tv);
tv.setText(str.toString());
}
- Preview
FullCode MainActivity
Copyright 2020 M. Fadli Zein