У меня есть класс данных, определенный, как показано нижеKotlin: Нужно ли защищать класс данных Kotlin?
package com.mypackage.model
object Model {
data class News(val photo: String, val title: String, val description: String)
}
Когда я компилирую его с помощью ProGuard (то есть версии выпуска), данные, которые я получил и хранить в модели все становится нулевым. Они все еще там, то есть список ArrayList. У списка OfNews есть ожидаемый размер. Однако все их содержимое равно null.
Отладка сборки это нормально. Чтобы решить эту проблему, я использую эти правила proguard и решаю проблему.
-keep class com.mypackage.model.** { *; }
Ожидается ли это? т.е. весь класс данных должен быть защищен?
Вы получаете 'java.lang.ClassNotFoundException' или' java.lang.NoSuchMethodError'? Если это не так, скорее всего, не ошибка Proguard в вашем случае. – miensol
На самом деле ничего не получилось. Он просто работает, и моя программа все еще работает. Но данные равны нулю. Возможно, мне нужно просканировать сообщения журнала. – Elye
Проверьте журнал, не видя никаких сообщений. Учитывая, что это релиз, все журналы отладки не отображаются. Если я перейду на сборку отладки, эта ошибка больше не будет отображаться, поэтому в отладочной сборке не останется никаких проблем. – Elye