接口如下
public interface ImgService {
@GET
Observable getImg(@Url String url);
}
Retrofit retrofit = new Retrofit.Builder()
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())
.addConverterFactory(GsonConverterFactory.create())
.baseUrl("http://pic41.nipic.com/")
.build();
ImgService imgService = retrofit.create(ImgService.class);
imgService.getImg("http://pic41.nipic.com/20140509/4746986_145156378323_2.jpg")
.subscribeOn(Schedulers.io())
.map(new Func1() {
@Override
public Bitmap call(ResponseBody responseBody) {
// 代码还从来没运行到过这个函数。。。
// responseBody.byteStream();
// return null;
}
})
.observeOn(AndroidSchedulers.mainThread())
.subscribe(new Subscriber() {
@Override
public void onCompleted() {
}
@Override
public void onError(Throwable e) {
e.printStackTrace();
}
@Override
public void onNext(Bitmap bitmap) {
img.setImageBitmap(bitmap);
}
});
现在出现的异常是:
com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 1 path $
这个图片网址打开就是一张图片,不是Json数据,是因为这个原因吗?
现在一头雾水,问题出现在哪里?