1. 程式人生 > >RXJava非同步程式碼

RXJava非同步程式碼

RxJava是什麼:

通過觀察者模式實現非同步操作的庫。同AsyncTask和Handler等Android自帶的非同步操作最大的區別是,隨著程式邏輯變得越來越複雜,RxJava依然能夠保持程式碼邏輯的簡潔。

RxJava的觀察者模式

RxJava觀察者模式有三個基本概念,Obaservable(可觀察者,被觀察者)、Observer(觀察者)、Subscribe(訂閱)。Observable和Observer通過Subscribe實現訂閱關係。Observable可以在需要的時候發出資訊通知Observer。傳送通知有三個方法:onNext(),onError(),onCompleted(),

Gradle配置

compile "io.reactivex:rxjava:1.1.0"
compile "io.reactivex:rxandroid:1.1.0"

相關程式碼

Observable.create(new Observable.OnSubscribe<Object>() {
    @Override
    public void call(Subscriber<? super Object> subscriber) {
        //非同步操作相關程式碼
        subscriber.onNext();
    }
}).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread())
        .subscribe(new
Action1<Object>(){ @Override public void call(Object data) { // 主執行緒操作 } });