Котлин решает проблему с gson

Я использую @parcelize для gson

Вот мой класс

@Parcelize data class CommunityModel(@SerializedName("post") val post: PostModel, @SerializedName("is_liked") val isLiked: Boolean, @SerializedName("post_like") val postLike: QuestionModel, @SerializedName("polling_options") val pollingOptions: List<PollingModel>, @SerializedName("post_polled") val postPolled: Boolean) : Parcelable 

Я получил ошибку Unable to invoke no-args constructor for class. Register an InstanceCreator with Gson for this type may fix this problem. Unable to invoke no-args constructor for class. Register an InstanceCreator with Gson for this type may fix this problem. ,

Но эта ошибка представлена ​​только в старых версиях Android (ниже 5.0)

Я попытался реализовать стандартный конструктор:

 constructor: this(PostModel(), true, QuestionModel(), emptyList(), true) 

Но он дал мне java.lang.VerifyError вместо этого

Я использую retrofit2 с rxjava2 и gson converter версии 2.3

Моя версия kotlin1.1.51

Это известная ошибка? Или я сделал что-то не так?

Плагин компилятора No-arg

Плагин компилятора no-arg генерирует дополнительный конструктор с нулевым аргументом для классов с определенной аннотацией.

Сгенерированный конструктор является синтетическим, поэтому его нельзя напрямую вызывать из Java или Kotlin, но его можно вызвать с помощью отражения.

Это позволяет Java Persistence API (JPA) создавать экземпляр класса данных, хотя он не имеет конструктора нулевого параметра с точки зрения Котлина или Java (см. Описание плагина kotlin-jpa ниже).

Использование в Gradle

Использование довольно похоже на все-открытое.

Добавьте плагин и укажите список аннотаций, которые должны привести к созданию конструктора no-arg для аннотированных классов.

 buildscript { dependencies { classpath "org.jetbrains.kotlin:kotlin-noarg:$kotlin_version" } } apply plugin: "kotlin-noarg" 

Источник https://kotlinlang.org/docs/reference/compiler-plugins.html

Intereting Posts
Как вызвать внешнюю команду из кода Котлина? Как использовать Mockito для фрагмента Kotlin / Activity для извлечения kotlinx.android.synthetic views Как оживить анимационный список в Котлине? Не удается написать основной конструктор класса Activity в Kotlin в Android Kotlin: «Длина выражения» типа «Int» не может быть вызвана как функция. Функция 'invoke ()' не найдена Kotlin werid компилирует ошибку, связанную с дженериками и автоматическим типом Как я могу получить ценность от наблюдаемых Есть ли какая-либо ссылка на временную сложность библиотеки коллекции Kotlin? Программирование создания пейджера представления в панели вкладок, но просмотр содержимого пейджера прокручивается через вкладки Операторы с нулевым значением, допустимые в общем классе? Как отключить кнопку точки в android Kotlin Kotlin и привязка данных для Android (BuildTools 2.0.0) Как разобрать LocalDateTime из RestController в Котлине Как мне настроить изменяемые тестовые приборы в Spek? Android Firebase auth: класс дескриптора локального модуля для com.google.android.gms.crash и com.google.firebase.auth не найден