Если для своего приложения разработчик может написать Proguard-правила, сохраняющие такие классы, то для библиотеки это возможно сделать, только исследовав ее исходный код. Это довольно сложная задача, поэтому создание правил ложится на разработчиков библиотек.
Если библиотека распространяется в формате
jar
, то разработчики часто документируют Proguard-правила. Пользователям библиотеки достаточно скопировать их в конфигурационный файл своего проекта.Если же библиотека поставляется в формате aar, то разработчики библиотеки могут запаковать Proguard-правила в aar-пакет.
Для этого в gradle-файле библиотеки используется проперти
consumerProguardFiles
, которая принимает файл с правилами Proguard.В этом случае пользователям библиотеки не надо ничего делать. При сборке приложения Gradle автоматически проверяет все aar-библиотеки на наличие consumer proguard файлов и мержит их с конфигурационным файлом проекта.