R8 и ProGuard: ошибка отсутствия класса в классе данных, использующем аннотацию @KeepAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 R8 и ProGuard: ошибка отсутствия класса в классе данных, использующем аннотацию @Keep

Сообщение Anonymous »

По какой-то причине одна из наших моделей классов данных была запутана или удалена во время сборки, и нам пришлось добавить к ней аннотацию @Keep, чтобы она работала.

Код: Выделить всё

@Keep
data class CommonNotification(
val title: String,
val description: String,
val channel: String,
val action: String = DEFAULT_VALUE_STRING,
val actionData: String? = DEFAULT_VALUE_STRING,
val bigImage: String? = DEFAULT_VALUE_STRING,
val environment: String = BuildConfig.BUILD_TYPE
)
Но запуск ./gradlew lint завершается с ошибкой
При запуске R8 обнаружено отсутствие классов. Добавьте недостающие классы или примените дополнительные правила хранения, созданные в

Код: Выделить всё

/Users/user/Desktop/Projects/Mobile/Android/App/app/libs/AndroidCommon/build/outputs/mapping/debug/missing_rules.txt.

ERROR: R8: Missing class java.lang.invoke.StringConcatFactory (referenced from: java.lang.String com.project.android.common.data.remote.responses.notifications.CommonNotification.toString())
Есть идеи, в чем проблема и решение?
Я попробовал решение из этого трекера ошибок
Добавление -dontwarn java.lang.invoke.StringConcatFactory, но предупреждение/ошибка получения неразрешенного имени класса в файле правил. Я использую JAVA VERSION_17 и AGP 8.1.1

Подробнее здесь: https://stackoverflow.com/questions/771 ... -annotatio
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Android»