我正在尝试探索Rxjava 2并从网站获取信息时遇到一些问题。 Actutally Observer给我一个错误。
我的代码:
observable.subscribe(getObserver());
可观察
Observable<String> observable = Observable.fromCallable(new Callable<String>() {
@Override
public String call() throws Exception {
String data = getHeadlines(SOURCE_WEB);
return data;
}
});
观察
protected <String> Observer<String> getObserver() {
return new Observer<String>() {
@Override
public void onSubscribe(Disposable d) {
Log.i("Observer get: ", "mamy sub");
Toast.makeText(context, "Wait...", Toast.LENGTH_SHORT).show();
}
@Override
public void onNext(String value) {
Log.i("Observer get: ",value.toString());
}
@Override
public void onError(Throwable e) {
Log.i("Observer get ", "Error");
}
@Override
public void onComplete() {
Log.i("Observer ", "complete");
}
};
}
我的提取方法
public String getHeadlines(String source) throws IOException {
Document doc = (Document) Jsoup.connect(source).get();
Elements newsHeadlines = doc.select("h2");
return newsHeadlines.toString();
}
当我使用AsyncTask时,一切正常......