in meinem Fall zu beantragen, wenn ich Unterklassenobjekt in Retrofit-Anfrage stellen geht es leer in Anfrage KörperKann nicht konvertieren Subklassen-Objektkörper json in Retrofit 2.0 mit GsonConverterFactory
interface User{ // my super interface
}
class FbUser implements User{ // my sub class
public String name;
public String email;
}
interface APIInterface{
@POST(APIConstants.LOGIN_URL)
Observable<LoginAPIResponse> createUserNew(@Body User user);
}
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(baseUrl)
.addConverterFactory(GsonConverterFactory.create(new Gson()))
.addCallAdapterFactory(RxErrorHandlingCallAdapterFactory.create())
.client(okHttpClient)
.build();
APIInterface networkAPI = retrofit.create(APIInterface.class);
jetzt i FbUserObject
networkAPI.createUserNew(fbUserObject).subscribe();
dann Objekt wird leer im Körper. mein log
D/OkHttp: Content-Type: application/json; charset=UTF-8
D/OkHttp: Content-Length: 2
D/OkHttp: Accept: application/json
D/OkHttp: TT-Mobile-Post: post
D/OkHttp: {}
D/OkHttp: --> END POST (2-byte body)
sehe ich gehen auch durch diese stackover Flow Link Polymorphism with gson
Sollte ich habe meine eigene Gson Converter schreiben?
Sieht wie eine Lösung aus. Ich bin jetzt ein trauriger Panda :(Ich suche nach einer Möglichkeit, den Prozess zu automatisieren. Wahrscheinlich ist Reflexion meine Wahl –