com.google.gson.stream.MalformedJsonException: Expected value at line 1 column 91 path $..photo

столкнулся с проблемой во время работы с API: почему-то вылетает ошибка при десириализации. Как можно решить проблему? Работаю с retofit2. Вероятно ошибка из-за "/" в пути к фото: photo=/media/hac1.jpg (Если ошибка глупая, сильно не ругайтесь, я новичок).

Заранее спасибо)

Шапка:

 private final String Url = "http://***.**.***.***/api/";
    private Gson gson = new GsonBuilder().create();
    private Retrofit retrofit = new Retrofit.Builder().addConverterFactory(GsonConverterFactory.create(gson)).baseUrl(Url).build();
    private Link api = retrofit.create(Link.class);

Метод:

 public void userInfo() {
        sharedPreferences = getSharedPreferences(XML_USER, MODE_PRIVATE);
        SharedPreferences.Editor editor = sharedPreferences.edit();
        Call<Map> detail = api.getUserDetails("Token " + sharedPreferences.getString(SAVED_TOKEN, ""));
        try {
            Response response = detail.execute();
            if (response.isSuccessful()) {
                Log.e("RESPONSE", "body " + response.body());
                Map<String, String> map = gson.fromJson(response.body().toString(), Map.class);
                Log.e("RESPONSE", "map " + map);
                System.out.println(map.toString());
                for (Map.Entry e : map.entrySet()) {
                    if (e.getKey().equals("username")) {
                        editor.putString(SAVED_USERNAME, e.getValue().toString());
                        editor.apply();
                    } else if (e.getKey().equals("email")) {
                        editor.putString(SAVED_EMAIL, e.getValue().toString());
                        editor.apply();
                    } else if (e.getKey().equals("id")) {
                        editor.putString(SAVED_ID, e.getValue().toString());
                        editor.apply();
                    }
                }
//                Log.e("mLog", "onClick: s " + String.valueOf(map.get("profile")));
            } else {
                Log.e("RESPONSE", "error " + response.code());
            }
        } catch (IOException e) {
            Log.e("TAG", "onCreate: " + "error");
            e.printStackTrace();
        }
    }

log:

2020-04-24 15:16:19.134 20168-20244/? E/RESPONSE: body {id=11.0, username=Ilnur, [email protected], is_active=true, profile={schedules=0, photo=/media/hac1.jpg}}
2020-04-24 15:16:19.136 20168-20244/? E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #2
    Process: adwantay.studio.application, PID: 20168
    com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Expected value at line 1 column 91 path $..photo
        at com.google.gson.Gson.fromJson(Gson.java:902)
        at com.google.gson.Gson.fromJson(Gson.java:852)
        at com.google.gson.Gson.fromJson(Gson.java:801)
        at com.google.gson.Gson.fromJson(Gson.java:773)
        at adwantay.studio.dindon.MainActivity.userInfo(MainActivity.java:697)
        at adwantay.studio.dindon.MainActivity$1.run(MainActivity.java:158)
        at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607)
        at java.lang.Thread.run(Thread.java:761)
     Caused by: com.google.gson.stream.MalformedJsonException: Expected value at line 1 column 91 path $..photo
        at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1559)
        at com.google.gson.stream.JsonReader.doPeek(JsonReader.java:590)
        at com.google.gson.stream.JsonReader.peek(JsonReader.java:425)
        at com.google.gson.internal.bind.ObjectTypeAdapter.read(ObjectTypeAdapter.java:55)
        at com.google.gson.internal.bind.ObjectTypeAdapter.read(ObjectTypeAdapter.java:70)
        at com.google.gson.internal.bind.TypeAdapterRuntimeTypeWrapper.read(TypeAdapterRuntimeTypeWrapper.java:41)
        at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:187)
        at com.google.gson.internal.bind.MapTypeAdapterFactory$Adapter.read(MapTypeAdapterFactory.java:145)
        at com.google.gson.Gson.fromJson(Gson.java:887)
        at com.google.gson.Gson.fromJson(Gson.java:852) 
        at com.google.gson.Gson.fromJson(Gson.java:801) 
        at com.google.gson.Gson.fromJson(Gson.java:773) 
        at adwantay.studio.dindon.MainActivity.userInfo(MainActivity.java:697) 
        at adwantay.studio.dindon.MainActivity$1.run(MainActivity.java:158) 
        at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:243) 
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1133) 
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:607) 
        at java.lang.Thread.run(Thread.java:761) 
2020-04-24 15:16:19.331 20168-20279/? E/libEGL: validate_display:99 error 3008 (EGL_BAD_DISPLAY)

Ответы (0 шт):