Как использовать аннотации Java для руководства Android Proguard?

При использовании Proguard с Android методы, которые вызывается только посредством отражения (например, обратные вызовы, определенные в атрибутах onClick XML), ошибочно удаляются.

Одним из решений этой проблемы является добавление каждого затронутого класса и метода в ваш proguard.cfg.

Как я могу использовать аннотации Java для достижения того же эффекта?

Я чувствую, что сделает код самодокументированным, и это позволит избежать кода и proguard.cfg, дрейфующих из синхронизации. Тем не менее, Proguard от Android, похоже, не поставляется с аннотацией.jar, упомянутой в его документации.

Solutions Collecting From Web of "Как использовать аннотации Java для руководства Android Proguard?"

Вы можете получить annotations.jar и annotations.pro из официального релиза ProGuard. Затем вы должны использовать аннотации, как описано в

http://proguard.sourceforge.net/manual/examples.html#annotated

Все необходимые параметры можно найти в proguard.cfg.

Недавно я столкнулся с этой проблемой. Вот что вам нужно сделать:

Чтобы исправить события onClick, добавьте это в настройки Proguard

-keepclassmembers class * extends android.app.Activity{ public void *(android.view.View); } 

Чтобы добавить аннотацию

-keepattributes ** или -keepattributes *Annotation*

Дополнительная информация доступна здесь http://www.simpligility.com/2010/12/hints-for-using-proguard-on-your-android-app/ Я использую maven-android-plugin для компиляции приложения для Android и этой статьи довольно Много суммирует то, что я делаю для андроида, чтобы заставить его работать. Надеюсь это поможет!