от сервера приходит json след. вида "{ "data": [...] }", то есть object, который содержит в себе array, как можно с помощью ретрофит его распарсить так, чтобы он возвращал List<Data>, а не какой-то обджект, полем которого является List<Data> ?
к ретрофиту через addConverterFactory добавь GsonConverterFactory.create(GsonBuilder().registerTypeAdapter(Array<Data>::class.java, DataDeserializer()).create()) и создай класс DataDeserializer class DataDeserializer : JsonDeserializer<Array<Data» { override fun deserialize(json: JsonElement, typeOfT: Type?, context: JsonDeserializationContext?): Array<Data> = GsonBuilder() .create() .fromJson(json.asJsonObject["data"].asJsonArray, Array<Data>::class.java) }
Обсуждают сегодня