Size: a a a

StartAndroid Ru Kotlin

2019 February 25

V

Vitali in StartAndroid Ru Kotlin
"a"
источник

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
всё равно будет null
источник

V

Vitali in StartAndroid Ru Kotlin
скрин давай
источник

V

Vitali in StartAndroid Ru Kotlin
не будет нул
источник

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
гсон игнорит дефолтные значения
источник

V

Vitali in StartAndroid Ru Kotlin
ты проверь
источник

V

Vitali in StartAndroid Ru Kotlin
бле
источник

V

Vitali in StartAndroid Ru Kotlin
он же бберет за основу сам класс
источник

LR

Leonid Ratanov in StartAndroid Ru Kotlin
хоть что ставь в дефолтное значание - еcли Gson не имеет данные при десериализации - будет null
источник

LR

Leonid Ratanov in StartAndroid Ru Kotlin
неважно, nullable поле или нет
источник

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
как мне сделать, чтобы не было nullPointerException при обращении к неnullable полю класса, который получается из json'а

я же говорю, гугл советует или тайпадаптеры писать на каждый датакласс, или вообще все поля делать nullable, или не юзать gson
или я плохо гуглю
Есть ли нормальный способ, там в билдере что то прописать, или какой то глобальный адаптер добавить, чтобы гсон нормально работал с ненулабл полями?
источник

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
Leonid Ratanov
хоть что ставь в дефолтное значание - еcли Gson не имеет данные при десериализации - будет null
гсон имеет данные, они в конструкторе класса, но он игнорит его и юзает свой unsafe пустой конструктор, вот поля и не инициализируются, по крайней мере я так понял из статей
источник

LR

Leonid Ratanov in StartAndroid Ru Kotlin
>также не хочется во всех датаклассах делать все поля nullable.
почему? в чем проблема?
источник

ДФ

Д Ф in StartAndroid Ru Kotlin
Иван Захаров
как мне сделать, чтобы не было nullPointerException при обращении к неnullable полю класса, который получается из json'а

я же говорю, гугл советует или тайпадаптеры писать на каждый датакласс, или вообще все поля делать nullable, или не юзать gson
или я плохо гуглю
Есть ли нормальный способ, там в билдере что то прописать, или какой то глобальный адаптер добавить, чтобы гсон нормально работал с ненулабл полями?
Почему обычным if не поставить проверку при обращении ? Или если есть доступ к бэк то добавить какой то status: true|false ?
источник

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
Leonid Ratanov
>также не хочется во всех датаклассах делать все поля nullable.
почему? в чем проблема?
просто будет не так удобно использовать, и во всём проекте добавится куча проверок на null
источник

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
Д Ф
Почему обычным if не поставить проверку при обращении ? Или если есть доступ к бэк то добавить какой то status: true|false ?
просто этот иф нужно будет в 10 местах вставлять для каждого такого поля
источник

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
неnullable поля как раз и нужны были для упрощения кода, но  получается что gson не даёт их использовать в базах данных...
источник

ДФ

Д Ф in StartAndroid Ru Kotlin
Иван Захаров
просто этот иф нужно будет в 10 местах вставлять для каждого такого поля
Тогда попросите бэкендчика чтоб он хотябы пустые даные отправлял для него это совсем не сложно
источник

ИЗ

Иван Захаров... in StartAndroid Ru Kotlin
Д Ф
Тогда попросите бэкендчика чтоб он хотябы пустые даные отправлял для него это совсем не сложно
по моему это не очень хорошая просьба
потом когда нибудь добавится ещё 1 поле в моделях, и клиент поломается, потому что появится null там где его не может быть, пока на сервере будут делать значение для этого поля
источник

ДФ

Д Ф in StartAndroid Ru Kotlin
Иван Захаров
по моему это не очень хорошая просьба
потом когда нибудь добавится ещё 1 поле в моделях, и клиент поломается, потому что появится null там где его не может быть, пока на сервере будут делать значение для этого поля
Можно взглянуть на джсон респонс
источник