Skip to content

Latest commit

 

History

History
47 lines (32 loc) · 1.32 KB

回调方式接口使用.md

File metadata and controls

47 lines (32 loc) · 1.32 KB

回调方式接口使用

此接口是基于 RxJava 实现的

` subscription 为句柄,需要在 ondestory 中取消回调

subscription = AppObservable.bindActivity(context,
			RxUtils.postEntity("urlPath", user) 
			.map(RxUtils.getMap())) 
			.subscribeOn(Schedulers.io())
           	.observeOn(AndroidSchedulers.mainThread())
           	.subscribe(getObserver());

`

RxUtils.postEntity("urlPath", user) //具体的接口调用postEntity(俩种形式,Entity,和 map)

RxUtils.postMap("urlPath", map) //postMap 形式接口

.map(RxUtils.getMap()) ////此过程为数据解析过程,需要和具体逻辑对应 ,提供了所有 DataParse的方法

.subscribe(getObserver()) //写到当前View 中来处理返回数据,相当于 handler 的 handleMessage()方法

`

private Observer getObserver() {
    return new Observer<ResultObject>() {
        @Override
        public void onCompleted() {
            L.i(TestRxJava.class, "onCompleted");
        }

        @Override
        public void onError(Throwable e) {
            L.i(TestRxJava.class, "onError");

        }

        @Override
        public void onNext(ResultObject ro) {
            L.i(TestRxJava.class, "onNext" + s);
        }
    };
}

`