2016-11-10 4 views
0

Wie dieser Fehler ich aus der von Android-Emulatormalformed JSON Retrofit2

error from android emulator

com.google.gson.stream.MalformedJsonException erhalten lösen: Verwenden Sie JsonReader.setLenient (true) malformed JSON akzeptieren in Zeile 1, Spalte 1 Pfad

$

private void registerToken(final String token) { 

    Retrofit retrofit = new Retrofit.Builder() 
      .baseUrl(Constants.BASE_URL) 
      .addConverterFactory(GsonConverterFactory.create()) 
      .build(); 

    tokenPostAPI = retrofit.create(TokenPostAPI.class); 
    Call<String> tokenPostCall = tokenPostAPI.request(token); 

    studentPostCall.enqueue(new Callback<String>() { 
     @Override 
     public void onResponse(Call<String> call, Response<String> response) { 
     } 
     @Override 
     public void onFailure(Call<String> call, Throwable t) { 
      Log.e("token", "onFailure: "+t.toString()); 
      Log.e("token", "onFailure: applied token "+token); 
     } 
    }); 
} 
Hier wird das Token angewendet =

"fQEG8hgG8oE:APA91bGKsH78Ft6wCDW2EtMsuC19EXl10pxkJ95ZrVwnmaofFcw8-TgxeASujQva_gM7gYijIduYL82TmR5qeExxaeHP_252ZOSx7in99ShnaKwE8bsnOyYBDAI4M34d3APCiJKpWDqC " 

Gesamt Token CHARACTERS 152

+0

Der Fehler bedeutet, dass das, was Sie zu analysieren versuchen, nicht korrekt ist JSON. Werfen Sie einen Blick auf http://www.json.org/ für die korrekte Syntax – Henry

Antwort

0

Kompilierung 'com.google.code.gson: Gson: 2.6.1'

Gson gson = new GsonBuilder() 
     .setLenient() //building as lenient mode`enter code here` 
     .create(); 

Retrofit retrofit = new Retrofit.Builder() 
     .baseUrl(BASE_URL) 
     .addConverterFactory(GsonConverterFactory.create(gson)) 
     .build(); 
+0

Fügen Sie dies in Ihrer Frage Abschnitt –

+0

Dank IntelliJ Amiya –