【发布时间】:2018-06-18 03:23:42
【问题描述】:
我对 RxAndroid 非常陌生,并且仍在努力摆脱我所犯的错误。
Observable.just(RandomComputeManager.getChartData(0,"abcd",new Date()))
.subscribeOn(Schedulers.computation())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(s -> {
System.out.println("RXANDROID"+ s.getFood());
Toast.makeText(getActivity(),"HELLO"+s.getFood(),Toast.LENGTH_LONG);
});
我在这里有一个繁重的计算方法,我试图在 RxJava 的 Schedulers.computation() 线程上运行。(我不知道是否只在 Observable.just 中调用它是正确的方法)。如果没有数据,该方法应该抛出异常。
Class RandomComputeManager{
public static getPieChartData(int a,String b,Date c) throws CustomException {
if(haveData){
//All Okay
}
else{
throw new CustomException("No Data");
}
}
构建失败并出现错误
错误:未报告的异常CustomException;必须被抓住或宣布被扔掉
我尝试向 subscribe 方法添加一个观察者,认为它有一个 onError 方法,但由于被调用方法的返回值存在歧义(Don '不知道它应该是可观察的还是我需要的对象)。 请提出一种处理方法。
【问题讨论】:
标签: android exception exception-handling rx-java rx-android