Proguard/R8 не использует файл потребительских rules.pro из библиотечного модуляAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Proguard/R8 не использует файл потребительских rules.pro из библиотечного модуля

Сообщение Anonymous »

Я создал образец приложения с двумя классами: один находится в модуле Main: App , а другое помещается в модуль библиотеки, который использует модуль App как прямая зависимость.
Класс модели, присутствующий в модуле приложения:

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

class AppModel {

fun run() {
Log.d("mytag", "AppModel run: ${this.javaClass.simpleName}")
}

}
< /code>
Класс модели присутствует в модуле библиотеки: < /p>
class LibraryModel {

fun run() {
Log.d("mytag","LibraryModel run: ${this.javaClass.simpleName}")
}

}
В моем коде активности я просто вызываю метод run () обоих классов.

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

class MainActivityTwo : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_main_two)

LibraryModel().run()
AppModel().run()
}
}
< /code>
У меня есть 2 вопроса:
Вопрос 1. При построении APK в режиме выпуска Proguard жалуется, что вам нужно добавить правило прогноза для LibraryModel < /code>, присутствующее в модели библиотеки. Почему это жалуется на это? Это просто простой класс, и, по моему мнению, он должен перейти к запугиванию класса. Согласно журналам ошибок, R8 полностью удалил класс, что неправильно. Но это также не работает. Я добавил правило в файле потребительских правил.pro 
. По моему мнению, и исправьте меня, если я ошибаюсь, когда я строю APK, Gradle объединяет правила прогиарда из: app proguard-rules.pro файл и из библиотек, он использует файл потребительских правил. /> Согласно этому пониманию, это должно работать, но это не так. Является ли это ошибкой в ​​AGP, что она не использует файл потребительских правил. Pro, чтобы выяснить, что необходимо сделать для файла модуля библиотеки. Но это не решение. < /P>
Пожалуйста, дайте мне знать, что мне не хватает. Вам нужно выбрать режим выпуска и запустить приложение.>

Подробнее здесь: https://stackoverflow.com/questions/797 ... ary-module
Ответить

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

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

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

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

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