package org.cuieney.videolife.common.utils; import rx.Observable; import rx.Subscriber; import rx.android.schedulers.AndroidSchedulers; import rx.schedulers.Schedulers; /** * Created by codeest on 2016/8/3. */ public class RxUtil { /** * 统一线程处理 * @param <T> * @return */ public static <T> Observable.Transformer<T, T> rxSchedulerHelper() { //compose简化线程 return new Observable.Transformer<T, T>() { @Override public Observable<T> call(Observable<T> observable) { return observable.subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()); } }; } /** /** * 生成Observable * @param <T> * @return */ public static <T> Observable<T> createData(final T t) { return Observable.create(new Observable.OnSubscribe<T>() { @Override public void call(Subscriber<? super T> subscriber) { try { subscriber.onNext(t); subscriber.onCompleted(); } catch (Exception e) { subscriber.onError(e); } } }); } }