Сегодня я сталкиваюсь с действительно странной проблемой...
У меня есть приложение Gradle с двумя модулями, одним основным модулем и одним библиотечным модулем.
- В обоих модулях я объявил путь к файлу proguard-rules.pro, который является правильным.
- В обоих файлах .gradle у меня есть minifyEnabled true
вот первая проблема: даже если minifyEnabled является ложным в библиотеке, она становится запутанной. он не имеет никакого эффекта и, похоже, зависит от настроек основного модуля. Я использую proguard через некоторое время, и я никогда не испытывал такого поведения вообще.
Кроме того, proguard-rules.pro библиотеки, кажется, полностью игнорируется. Неважно, что я объявляю там, он не используется, и результат всегда один и тот же (всегда декомпилированный для просмотра результата). Он запутывается с настройками по умолчанию.
Я использовал недопустимое имя файла proguard, чтобы увидеть, даже ли затронут файл, и действительно есть ошибки с неправильным именем, и он также жалуется на ошибки синтаксиса в файле proguard...
Я не знаю, связано ли это каким-либо образом с обновлением Android Studio, так как он также рекомендовал мне использовать "minifyEnabled" вместо "runProguard".
Как мне заставить proguard также использовать proguard-rules.pro библиотеки?
Edit:
Я сделал образец проекта, чтобы прояснить мою проблему.
Конфигурация proguard моей библиотеки
Gradle моей библиотеки:
И, наконец, результат я всегда получаю. Неважно, что я исключаю/включаю в конфигурацию proguard
Как вы можете видеть, правила proguard хорошо работают на основном модуле. Он делает то, что должен. Но он всегда полностью запутывает мою библиотеку a.a....
Он также полностью удалил Activity Library, что не должно происходить вообще