2017-05-16 2 views
-1

Ich verwende Retrofit Version 2.3.0 mit OkHttp 3.8.0. Wenn ich meine API mit einer GET-Anfrage anklicke, wird als Ergebnis 200 zurückgegeben, aber ich kann nicht auf Elemente aus dem Modell Version zugreifen.Retrofit Http gibt einen API-Aufruf erfolgreich aber gibt Modellelemente als Null zurück

APIService apiService = APIClient.getAPIService(); 

Call<Version> call = apiService.getVersionByVersionCode(BuildConfig.VERSION_CODE); 
     call.enqueue(new Callback<Version>() { 
      @Override 
      public void onResponse(Call<Version> call, Response<Version> response) { 
       Version result = response.body(); 
       Log.e("TAG", "OnResponse " + result.toString()); 
      } 

      @Override 
      public void onFailure(Call<Version> call, Throwable t) { 
       Log.e("TAG", "Failure "); 
      } 
     }); 

Das ist mein Version Klasse, und wenn ich die versionName oder version Elemente einer Instanz zugreifen, bekomme ich null:

package com.actovoice.model; 

import com.google.gson.annotations.SerializedName; 

public class Version { 

    @SerializedName("upgrade") int upgrade; 
    @SerializedName("versionName") String versionName; 
    @SerializedName("version") String version; 

    public int getUpgrade() { 
     return upgrade; 
    } 

    public void setUpgrade(int upgrade) { 
     this.upgrade = upgrade; 
    } 

    public String getVersionName() { 
     return versionName; 
    } 

    public void setVersionName(String versionName) { 
     this.versionName = versionName; 
    } 

    public String getVersion() { 
     return version; 
    } 

    public void setVersion(String version) { 
     this.version = version; 
    } 

} 

Meine Retrofit-Schnittstelle:

public interface APIService { 

    @GET("apps/appType/ANDROID/version/{versionCode}") 
    Call<Version> getVersionByVersionCode(@Path("versionCode") int versionCode); 

} 
+0

Vielleicht ist die Zuordnung fehlschlägt, plzz schreiben ur Rohantwort und Version Klasse –

+0

auch, setzen Sie Ihre Retrofit-Schnittstelle –

+0

@Roy pls überprüfen Ich habe meine Frage mit Version Klassen- und Interface- – Swapnil

Antwort

0

Versuchen Hinzufügen Scalar Converter zu Ihrer Retrofit-Instanz wie folgt:

.addConverterFactory(ScalarsConverterFactory.create()) 
Verwandte Themen