国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術(shù)文章
文章詳情頁

android - Retrofit Rxjava 在返回 String(不是Java bean)時沒有走 rx 回調(diào)?

瀏覽:123日期:2024-02-26 17:41:24

問題描述

當 是Javabean 時就能得到回調(diào).之前提問匆忙沒有貼代碼,好多人要是沒遇上還真不知道我在說啥.

代碼片段如下:

public void getDemoData(Subscriber<String> subscriber){HttpService.getInstance().create(DemoService.class).getDemoPicture('params1',params2,params3,'params4').subscribeOn(Schedulers.io()).unsubscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe(subscriber);

private void requestData() {HttpMethods.getInstance().getDemoData(new Subscriber<String>() { @Override public void onCompleted() { Toast.makeText(MainActivity.this, 'ok', Toast.LENGTH_SHORT).show(); } @Override public void onError(Throwable e) {showToast(getResources().getString(R.string.error_data)); } @Override public void onNext(String str) { //....} }}); }

private HttpService() {OkHttpClient.Builder httpClientBuilder = new OkHttpClient.Builder();httpClientBuilder.connectTimeout(DEFAULT_TIMEOUT, TimeUnit.SECONDS);HttpLoggingInterceptor interceptor = new HttpLoggingInterceptor();interceptor.setLevel(HttpLoggingInterceptor.Level.BODY);httpClientBuilder.addInterceptor(interceptor).build();retrofit = new Retrofit.Builder().client(httpClientBuilder.build()).addConverterFactory(GsonConverterFactory.create()).addCallAdapterFactory(RxJavaCallAdapterFactory.create()).baseUrl(BingUrl.BING).build(); }

HttpLoggingInterceptor 能打印出請求成功狀態(tài)和返回的數(shù)據(jù),只是回調(diào)都沒走

問題解答

回答1:

這個問題我也遇到了,就是出現(xiàn)錯誤的時候不返回對象,返回string,然后解析不了,目前只是提示寫死的錯誤信息,或者直接用string解析,不知道有什么辦法可以解決

回答2:

返回String肯定能得到,貼源碼啊,你怎么寫的

回答3:

出錯了 就在onError里處理呀

回答4:

第一個方法中g(shù)etDemoData傳入的參數(shù)應該是寫錯了,應該是Subscriber<DemoService> subscriber,而不是Subscriber<String> subscriber

標簽: java
相關(guān)文章:
主站蜘蛛池模板: 同仁县| 横峰县| 桃园市| 墨玉县| 涪陵区| 莱西市| 武定县| 郧西县| 江安县| 乳山市| 莆田市| 丽江市| 德令哈市| 监利县| 高邑县| 信宜市| 永泰县| 嘉祥县| 北票市| 磐安县| 蒙自县| 新营市| 景泰县| 合阳县| 丹东市| 太仓市| 武安市| 新和县| 蒙自县| 宿迁市| 博客| 道孚县| 古交市| 曲麻莱县| 六枝特区| 南陵县| 诸城市| 永善县| 工布江达县| 伊宁市| 华池县|