Size: a a a

2021 June 28

IK

Ilya Kokhan in Kotlin Android
Кажется, это мой случай
источник

IK

Ilya Kokhan in Kotlin Android
Unfortunately, top-level lists are supported only for serialization in ktor.

Видимо, придется обратно возвращаться к Gson.
источник

Н

Некси in Kotlin Android
Есть json такого вида. Как правильно сделать из него List<String>, в котором только ключи
источник

AG

Alexander Gorodok in Kotlin Android
1. Оффтоп. 2. В List нет ключей.
источник

Н

Некси in Kotlin Android
Почему оффтоп? Вопрос по Колину и андроиду, а ключи мне надо в лист запихнуть
источник

AM

Andrew Mikhaylov in Kotlin Android
Вы хоть расскажите, какой библиотекой пользуетесь для работы с JSON.
источник

Н

Некси in Kotlin Android
Moshi/Gson
источник

AM

Andrew Mikhaylov in Kotlin Android
И оно вам какую структуру данных сейчас отдаёт?
источник

mP

mr. PESIK in Kotlin Android
Десериализовать его в Map<String, String>. Взять все ключи и смапить в List
источник

AL

Alexander Levin in Kotlin Android
Ну, самое наивное решение - спарсить честно в Map<String, List<String>> любым удобным методом и просто уже вытащить ключи как map.keys.toList()
источник

Н

Некси in Kotlin Android
Благодарю
источник

mP

mr. PESIK in Kotlin Android
вот так, конечно
источник

mP

mr. PESIK in Kotlin Android
а не Map<String, String>
источник

AL

Alexander Levin in Kotlin Android
Пожалейте коллег и откажитесь уже от Gson.

Мне кажется вы какие-то слишком старые тикеты смотрите.

В теории если вы просто сделаете условный Json.decodeFromString<List<YourItemType>>(jsonString)
То будет всё окей
(Не знаю насколько хорошо работает именно наследоваться от типа List, не пробовал ни разу)
источник

Na

Neon an Děv 8) in Kotlin Android
Если вопрос не о Kotlin-specific вещах, спрашивайте в @android_ru
источник
2021 June 29

AS

Aleksey Skolotin in Kotlin Android
Подскажите, а чем плох Gson? Спрашиваю не холивара ради, а для информации.
источник

АО

Алексей Овсянников... in Kotlin Android
Ну в рамках котлина он как минимум не идиоматичен - kotlinx.serialization будет по-лучше :) когда-то gson не умел нормально работать с нуллами (хз, как сейчас) (ну то есть на ненуллабельных полях оставлял нуллы)
источник

АО

Алексей Овсянников... in Kotlin Android
ну и я подозреваю, что котлиновская сериализация быстрее будет
источник

АЕ

Алексей Ершов... in Kotlin Android
Не уважает нуллабельность, хуже поддерживает котлин фичи вроде полиморфизма на sealed классах, не имеет compile time проверки на то, что вся нужная иерархия классов сериализуема
источник

d

danilshik in Kotlin Android
Так и сейчас он не поддерживает
источник