美文网首页
Rxjava和Retrofit 在android中使用

Rxjava和Retrofit 在android中使用

作者: wervy | 来源:发表于2019-12-18 15:45 被阅读0次

    创建Retrofit对象


    image.png

    封装Rxjava2中Observable方法

    private void toSubscribe(Observable tObservable, Observer observer) {
            tObservable.subscribeOn(Schedulers.io()) //新建一个io线程
                    .unsubscribeOn(Schedulers.io())
                    .observeOn(AndroidSchedulers.mainThread()) //在Android主线程中处理
                    .subscribe(observer);
        }
    

    这样在每次调用的使用,就不用每次重复写了

     public void getActivityFreight(RequestBody map, Observer observer){
            Observable observable = apiService.getActivityFreight(map);
            toSubscribe(observable, observer);
        }
    
    

    我们来看一下Observable中subscribeOn和observeOn有啥区别

    subscribeOn

    指定一个观察者在哪个调度器上观察这个Observable

    observeOn

    指定的是Observable自身在哪个调度器上执行

    如代码中所示:
    subscribeOn(Schedulers.io())

    在io线程中请求网络

    observeOn(AndroidSchedulers.mainThread())

    在主线程中更新ui

    相关文章

      网友评论

          本文标题:Rxjava和Retrofit 在android中使用

          本文链接:https://www.haomeiwen.com/subject/girunctx.html