Proguard хранит только имя класса и все члены и методы внутри класса.

Документация недостаточно ясна, чтобы объяснить это.

-keepnames класс_спецификация

Сокращение от -keep,allowshrinking class_specification

Указывает классы и члены классов, имена которых должны быть сохранены, если они не удаляются на этапе сжатия. Например, вы можете захотеть сохранить все имена классов, реализующих интерфейс Serializable, чтобы обработанный код оставался совместимым с любыми изначально сериализованными классами. Классы, которые вообще не используются, все равно могут быть удалены. Применяется только при запутывании.

Пожалуйста, кто-нибудь может объяснить атрибут keepnames. сохранит ли это только имя класса или все члены и методы класса. Пожалуйста, предоставьте мне способ сохранить только имя класса, а не все методы и члены класса.

Извините за плохой английский. Я думал, что ясно объяснил свою проблему.


person K Sathish    schedule 20.03.2018    source источник


Ответы (1)


Пожалуйста, просмотрите документацию; в нем есть все и немного проб и ошибок, необходимых для полного понимания. :)

документация proguard

Кстати, просто чтобы сохранить имя класса, добавьте следующую строку в ваш файл progurard

-keepnames class your.package.name.ClassName {

}

пример:

-keepnames class com.example.test.domain.Person {

}
person ddassa    schedule 20.03.2018