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

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

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

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

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

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

Все необходимые параметры можно найти в 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 и этой статьи довольно много суммирует то, что я делаю для андроида, чтобы заставить его работать. Надеюсь это поможет!