zu erstellen Ich verwende Retrofit2 in meinem Projekt, und ich muss einige JSON-Antwort in benutzerdefiniertes Objekt analysieren. Also habe ich Deserializer und nannte es in GsonBuilderIst es möglich, Json zu analysieren, ohne CallAdapter in Retrofit2
private final Gson _gson = new GsonBuilder()
.registerTypeAdapter(DaysList.class, new DaysDeserializer())
.create();
Danach habe ich definiert Retrofit
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(_activity.getString(R.string.config_api_url))
.addConverterFactory(GsonConverterFactory.create(_gson))
.build();
Aber mit definierten Retrofit Service
Call<DaysList> retrofitHolidaysRequest()
bekam ich eine Ausnahme. Danach wechselte ich zu Service-Methode Methodensignatur und es wurde:
DaysList retrofitHolidaysRequest()
auch gearbeitet haben, fügte ich meine eigene CallAdapter.Factory und alles zu Retrofit.Builder wie ich brauche:
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(_activity.getString(R.string.config_api_url))
.addConverterFactory(GsonConverterFactory.create(_gson))
.addCallAdapterFactory(new ResponseCallAdapterFactory())
.build();
So ist die Frage ist: Ist es möglich, eigene Deserializer zu erstellen, ohne eigene CallAdapter zu definieren? Wenn es möglich ist, was habe ich dann falsch gemacht?
Also, wenn Sie meine Frage downvoted bitte erklären, warum – darkchaos