RoboBinding ProGuard rules

RoboBinding – a data-binding Presentation Model(MVVM) framework for the Android platform.

RoboBinding helps you write UI code that is easier to read, test and maintain without performance compromise(code generation instead of java reflection).

ProGuard rules for RoboBinding

Add the following lines to your ProGuard configuration proguard.cfg file in project.

-keepattributes *Annotation*,Signature
-keep,allowobfuscation @interface org.robobinding.annotation.PresentationModel

-keep @org.robobinding.annotation.PresentationModel class * {
    public *** *(...);
}

-keep class * implements org.robobinding.itempresentationmodel.ItemPresentationModel{
    public *** *(...);
}

-keep class * extends org.robobinding.presentationmodel.AbstractPresentationModelObject{
    public (...);
}

-keep class * extends org.robobinding.presentationmodel.AbstractItemPresentationModelObject{
    public (...);
}

And add the following lines also to keep the constructors of view listeners.

-keepclassmembers class * implements org.robobinding.viewattribute.ViewListeners {
    public (...);
}

And add the following lines to suppress google guava javax.annotation.XX reference warnings.

-dontwarn javax.annotation.**

For more information about RoboBinding please see the website.

Static Gson ProGuard rules

Popular ProGuard rules