簡體   English   中英

“更新為RxJava2時,不存在類型變量R的實例,因此Observable符合Observable”錯誤

[英]“No Instance of type variable R exist so that Observable conforms to Observable” Error when updating to RxJava2

我正在嘗試使用retrofit and rxJava調用API。 使用RxJava 1 ,下面的代碼似乎運行良好,但是一旦我更新到RxJava 2我收到此錯誤:

錯誤:

沒有類型變量R的實例,因此Observable符合Observable

API

Observable<HttpResult<List<Article>>> getList(@Query("key")String key);

這里完成了Api請求,這是我在.map運算符中得到此錯誤的地方

Observable cache=providers.getList().map(new HttpRsltFunc<List<Article>>());

結果類模型:

private  class HttpRsltFunc<T> implements Func1<HttpResult<T>, T> {
       @Override
       public T call(HttpResult<T> httpResult) {   
           return httpResult.getData();
       }
   }

編輯:

導入rx.Observable而不是io.reactivex.Observable ,代碼工作得很好。

謝謝

這是因為rxjava2遷移到它們自己的功能接口 ,所以你需要實現不同的接口而不是Func1

並且不要忘記將您的改裝適配器更新為rxjava2版本: compile 'com.squareup.retrofit2:adapter-rxjava2:latest.version'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM