через ретрофит для отправки json
@POST("/")
suspend fun sendMessage(@Body body: Body): Response<Unit>
в дата крассе я создаю поля
@SerializedName("category")
val category: String
Проблема в том, что мне нужно одну переменную сделать в json с произвольным именем.@SerializedName не подходит для этого, так как value хочет сразу стрингу. Как сделать одно поле у json с настраиваемым именем?
map?
что?
@Json(name = "name")
Такой анннотации нет
обычно задача с динамическими значениями полей решается с помощью мапы val changeable: Map<String, String> и key для мапы как раз будет твоя category я не могу сейчас проверить сработает это в твоем случае или нет, так что поиграйся с типами и посмотри что получается
я бы это делал через кастомный десериализатор
Map<String, Any>
нельзя произвольное имя. Можешь ручной парсинг, но это костыли. Какой нибудь CustomSerializer гугли для ретрофита
Обсуждают сегодня