1) garder - préserver les classes
2) keepclassmembers - préserver les membres de la classe tels que les champs & méthodes
3) keepclasseswithmembers - préserver les classes si elles remplissent certaines conditions en fonction des membres
Exemples
1) conservent toutes les classes extension android. app.Activity
-keep public class * extends android.app.Activity
2) préserver tous les membres (champ statique) nommés CREATOR à la condition s'ils sont i android.os.Parcelable M ISE EN ŒUVRE
-keepclassmembers class * implements android.os.Parcelable {
static ** CREATOR;
}
3) préserver toutes les classes si elles ont le constructeur (comme mentionné ci-dessous init) avec des paramètres (contexte, AttributeSet) ou (contexte, AttributeSet, int).
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet, int);
}