Несогласованность получения данных из базы данных Firebase с тем же классом данных

В моей базе данных Firebase realtime у меня есть две основные ветви для отладки и выпуска. Отладочная ветка работает нормально, но когда выдается ветвь освобождения, поле price всегда имеет нулевое значение после преобразования в любую карту или список ниже, тогда как остальные три поля отражают правильные значения из БД. Обратите внимание, что наличие целого числа или десятичного числа в БД не имеет значения. Вот как выглядят мои данные:

Предварительный просмотр базы данных

Это мой класс данных с проблемой

 data class JsonProducto(var id: String, var name: String, var description: String, var price: Double) : Parcelable { constructor() : this( "id", "name", "desc", 0.0 ) constructor(source: Parcel) : this( source.readString(), source.readString(), source.readString(), source.readDouble() ) override fun describeContents() = 0 override fun writeToParcel(dest: Parcel, flags: Int) = with(dest) { writeString(id) writeString(name) writeString(description) writeDouble(price) } companion object { @JvmField val CREATOR: Parcelable.Creator<JsonProducto> = object : Parcelable.Creator<JsonProducto> { override fun createFromParcel(source: Parcel): JsonProducto = JsonProducto(source) override fun newArray(size: Int): Array<JsonProducto?> = arrayOfNulls(size) } } } 

Я также попробовал два подхода, чтобы преобразовать моментальный снимок данных в мой класс, оба с одинаковыми результатами:

Сериализация номер 1

 val mapper = object : GenericTypeIndicator<HashMap<String, JsonProducto>>() {} val list = arrayListOf<JsonProducto>() val map = dataSnapshot.getValue(mapper) map?.forEach { list.add(it.value) } 

Сериализация номер 2

 val list: MutableList<JsonProducto> = mutableListOf() dataSnapshot.children.mapNotNullTo(list) { it.getValue<JsonProducto>(JsonProducto::class.java) } 

Любые идеи о том, почему такое поведение происходит? Я ценю ваше время.

РЕДАКТИРОВАТЬ:

Все еще пытаясь понять, что здесь происходит, я провел несколько экспериментов, и результаты все равно шокируют меня: я изменил имя поля БД на precio только в одном из продуктов в рабочей ветке, а также переименовал член класса данных в это и теперь все поля показывают ноль, кроме той, которую я переименовал. Тем не менее, нерабочая ветка по-прежнему показывает нули, несмотря ни на что. Это очень странно.

Intereting Posts
Попытка загрузить файл в основное действие onCreate Есть ли лучший способ писать вызовы CompletableFutrue.XXXasync () в kotlin? Firebase неразрешенный супертип с Kotlin на Android Kotlin – Operator '==' не может применяться к «Редактируемому!». и 'String' при сравнении строки Нет аргументов типа, ожидаемых для fun findViewById (p0: Int): View Как получить идентификатор ресурса в фрагменте, используя kotlin в android? Параллельные операции над коллекциями Котлина? Не удалось написать JSON: не удалось десериализовать; вложенное исключение JsonProperty не работает при включенном разрешении Пользовательский тип Kotlin Generics с использованием подстановочного знака Kotlin: Не удается вернуть производный тип Где файлы .class? Установить и получить свойство непосредственно в делегате GMaps Android API и GeoJson, как покрыть весь мир дырой Proguard: Какое правило я могу добавить во избежание, не может найти ссылочный класс?