У меня есть следующий фрагмент JSON:
{
"hd":{
"hdEnabled":true,
"defaultStreamQualitySetting":"HD720",
"streamQualitySettings":{
"SD":"SD - low quality",
"HD720":"Standard HD - 720p",
"HD1080":"Full HD - 1080p"
}
}
}
Я хочу проанализировать streamQualitySettings с Klaxon и Gson для объекта с именем 'Option', у которого есть ключ и описание, так что я заканчиваю спискомиз 3 опций
- Опция (ключ = SD, описание = "SD - низкое качество")
- Опция (ключ = HD720, описание = "Стандарт HD - 720p")
- Опция (ключ = HD1080, описание = "Full HD - 1080p")
Как этого добиться с Клаксоном (или Gson)?
Это мой код
val jsonArray = bootstrapJsonObject()
.lookup<JsonArray<JsonObject>>("hd.streamQualitySettings")
.first()
val gson = Gson()
val options = ArrayList<Option>()
jsonArray.forEach {
options.add(gson.fromJson(it.toJsonString(), Option::class.java))
}