Как проанализировать модернизированный ответ JSON с помощью динамических ключей и имен переменных объектов в Android?Android

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Гость
 Как проанализировать модернизированный ответ JSON с помощью динамических ключей и имен переменных объектов в Android?

Сообщение Гость »


Я использовал модернизацию для вызова API в Android,

И я получаю такой ответ.

{ "данные": { "сад": { "идентификатор": "31", "name": "Сад", "количество": 307 }, "балкон": { "идентификатор": "32", "имя": "балкон", «количество»: 451 }, "Парковка": { "идентификатор": "1", "name": "Парковка", "количество": 791 }, ... } } [*]Здесь данные представлены в виде объекта. [*]А внутри него сад, балкон, парковка и т. д. тоже в виде объектов. Вызов

"garden":{...},"balcony":{...},"Parking":{...} Мне придется показать все это в виде списка.

И большая проблема заключается в том, что -> Я не знаю, сколько других объектов, таких как сад, балкон, парковка и т. д., появится в ответ.

Если бы «данные» были в форме JSONArray, я бы смог обработать их, построив некоторую логику, но здесь «данные» — это JSONObject.

Как я могу решить эту проблему? пожалуйста, помогите

Что я пробовал?

Извлечены данные в виде строки. Например...

@SerializedName("data") val data: String, Но выдает ошибку, Ошибка: и говорит, что вы запрашиваете строку, но «данные» — это объект.

Во-вторых, получили «данные» в виде JSONObject Like...

@SerializedName("data") val data: JSONObject, Да, это работает, но когда я печатаю журналы «данных», я получаю пустой JSONObject.

"данные": {

Это код, который может обработать ответ, но он бесполезен
класс данных MainData( @SerializedName("data") val data: Объекты, ) класс данных Объекты( @SerializedName("сад") val Garden: УдобстваДанные, @SerializedName("балкон") val балкон: УдобстваДанные, @SerializedName("parking") val park: EstateData, ... ) класс данных УдобстваДанные( @SerializedName("id") действительный идентификатор: Int? = 0, @SerializedName("name") val name: String? "=" @SerializedName("count") val count: Int? = 0, )
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»