0

AndroidでRetrofoit2でYoutube APIを使用しようとしていますが、両方のJackson/JSONコンバータはオブジェクトを解析できません。Retrofit2のYoutube APIは応答を解析できません(エラー:PlaylistItemListResponseにPageInfoのLinkedHashMapがあります)

YoutubeService

public interface YoutubeService { 
    @GET("playlistItems?part=snippet%2CcontentDetails") 
    Observable<PlaylistItemListResponse> getVideos(@Query("maxResults") Integer maxResults, 
               @Query("pageToken")String pageToken, 
               @Query("playlistId")String playlistId, 
               @Query("key")String key); 
} 

ここでは、私はそれを使用しています方法です:

以下
Retrofit retrofit = new Retrofit.Builder() 
      .baseUrl(YouTube.DEFAULT_BASE_URL) 
      .addCallAdapterFactory(RxJava2CallAdapterFactory.create()) 
      .addConverterFactory(JacksonConverterFactory.create()) 
      .build(); 
    youtubeService = retrofit.create(YoutubeService.class); 

私は取得していますエラーです:

reactivex.exceptions.OnErrorNotImplementedException: field com.google.api.services.youtube.model.PlaylistItemListResponse.pageInfo has type com.google.api.services.youtube.model.PageInfo, got java.util.LinkedHashMap (through reference chain: com.google.api.services.youtube.model.PlaylistItemListResponse["pageInfo"]) 

ThisはPlaylistItemResponse

のモデルであります3210

PlaylistItemResponse

This用のJava files誰かがこの問題を解決する方法を私を導くことができる応答

のですか?

+0

コーディング

幸せは、あなたが代わりに 'ジャクソンの1の' .addConverterFactory(GsonConverterFactory.create())を使用してみましたがありますか? Googleは時々Gson – MatPag

+0

と特異的に動作するように自分のクラスを作成しているのではい、私はそれも試みたが、正確に同じエラー – bpsingh

+0

canu plzはあなたのモデルクラス PlaylistItemListResponseを置きます?完全なJavaファイル –

答えて

0

私はあなたの問題をより深く理解するが、以下のように変更しようとすることはできません。 Gson

addConverterFactory(GsonConverterFactory.create(gson))

以下と2.changeモデルクラスPlaylistItemListResponseでそれ1.Make

Link of model class

そのすべてについてのあなたのモデルクラスの問題があるため。

+0

それは働いたが、私たちはなぜGoogleのモデルが機能していなかったのかの手がかりを持っているのだろうか? – bpsingh

+0

私はそれが異なるものに使われると思います –

関連する問題