Règle de confusion

# Spécifiez le nombre de passes d'optimisation à effectuer -optimizationpasses 5 # Ne pas générer de noms de classes en casse mixte lors de la confusion, c'est-à-dire tout en minuscules -dontusemixedcaseclassnames # Spécifie que les classes qui n'ignorent pas les bibliothèques non publiques -dontskipnonpubliclibraryclasses # Spécifie que les membres de classes de bibliothèque (champs et méthodes) visibles au package ne sont pas ignorés. -dontskipnonpubliclibraryclassmembers # Les noms de méthodes dans la classe confuse sont également confus, et un nom unique de confusion est généré pour la classe à confondre -useuniqueclassmembernames # Désactiver la prévalidation -dontpreverify # Afficher le journal du processus et sortir plus d'informations pendant le traitement -verbose # Spécifiez l'algorithme d'optimisation -optimizations !code/simplification/arithmetic,!field/*,!class/merging/* # Désactiver l'optimisation -dontoptimize # Étendre les autorisations d'accès des classes et des membres de classe pour permettre l'accès et la modification des classes et membres de classe avec des modificateurs pendant l'optimisation -allowaccessmodification # Préserver les noms des paramètres des méthodes qui doivent être conservés -keepparameternames # Les quatre composants ne doivent pas être confondus -keep public class * extends android.app.Activity -keep public class * extends android.app.Service -keep public class * extends android.content.BroadcastReceiver -keep public class * extends android.content.ContentProvider # Renommer la source du fichier de trace de la pile d'obfuscation en "SourceFile" -renamesourcefileattribute SourceFile # Protéger les annotations. Si votre code dépend des annotations, vous voudrez peut-être les conserver -keepattributes *Annotation* # Préserver les noms de fichiers sources, les noms de variables et les numéros de ligne pour produire des traces de pile confuses utiles -keepattributes SourceFile,LineNumberTable # Exceptions réservées, classes/interfaces internes, génériques, méthodes obsolètes -keepattributes Exceptions,InnerClasses,Signature,Deprecated,EnclosingMethod # Conserver les membres statiques du fichier R afin que le code appelant puisse accéder à ces champs via l'introspection -keepclassmembers class **.R$* { public static <fields>; } # Engagelab -keep class com.engagelab.** {*;} -dontwarn com.engagelab.** # google -keep class com.google.**{*;} -dontwarn com.google.** # huawei -keep class com.google.**{*;} -dontwarn com.google.** # xiaomi -keep class com.xiaomi.** {*;} -dontwarn com.xiaomi.** # meizu, si R8 est utilisé pour la confusion, le token peut ne pas être disponible -keep class com.meizu.** {*;} -dontwarn com.meizu.** # oppo -keep class com.heytap.** {*;} -dontwarn com.heytap.** # vivo -keep class com.vivo.** {*;} -dontwarn com.vivo.** -ignorewarnings -keepattributes *Annotation* -keepattributes Exceptions -keepattributes InnerClasses -keepattributes Signature -keepattributes SourceFile,LineNumberTable -keep class com.huawei.hianalytics.**{*;} -keep class com.huawei.updatesdk.**{*;} -keep class com.huawei.hms.**{*;} -keep class com.hihonor.push.**{*; }
              
              # Spécifiez le nombre de passes d'optimisation à effectuer
-optimizationpasses 5

# Ne pas générer de noms de classes en casse mixte lors de la confusion, c'est-à-dire tout en minuscules
-dontusemixedcaseclassnames

# Spécifie que les classes qui n'ignorent pas les bibliothèques non publiques
-dontskipnonpubliclibraryclasses

# Spécifie que les membres de classes de bibliothèque (champs et méthodes) visibles au package ne sont pas ignorés.
-dontskipnonpubliclibraryclassmembers

# Les noms de méthodes dans la classe confuse sont également confus, et un nom unique de confusion est généré pour la classe à confondre
-useuniqueclassmembernames

# Désactiver la prévalidation
-dontpreverify

# Afficher le journal du processus et sortir plus d'informations pendant le traitement
-verbose

# Spécifiez l'algorithme d'optimisation
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*

# Désactiver l'optimisation
-dontoptimize

# Étendre les autorisations d'accès des classes et des membres de classe pour permettre l'accès et la modification des classes et membres de classe avec des modificateurs pendant l'optimisation
-allowaccessmodification

# Préserver les noms des paramètres des méthodes qui doivent être conservés
-keepparameternames

# Les quatre composants ne doivent pas être confondus
-keep public class * extends android.app.Activity
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider

# Renommer la source du fichier de trace de la pile d'obfuscation en "SourceFile"
-renamesourcefileattribute SourceFile

# Protéger les annotations. Si votre code dépend des annotations, vous voudrez peuttre les conserver
-keepattributes *Annotation*

# Préserver les noms de fichiers sources, les noms de variables et les numéros de ligne pour produire des traces de pile confuses utiles
-keepattributes SourceFile,LineNumberTable

# Exceptions réservées, classes/interfaces internes, génériques, méthodes obsolètes
-keepattributes Exceptions,InnerClasses,Signature,Deprecated,EnclosingMethod

# Conserver les membres statiques du fichier R afin que le code appelant puisse accéder à ces champs via l'introspection
-keepclassmembers class **.R$* {
   public static <fields>;
}

# Engagelab
-keep class com.engagelab.** {*;}
-dontwarn com.engagelab.**

# google
-keep class com.google.**{*;}
-dontwarn com.google.**

# huawei
-keep class com.google.**{*;}
-dontwarn com.google.**

# xiaomi
-keep class com.xiaomi.** {*;}
-dontwarn com.xiaomi.**

# meizu, si R8 est utilisé pour la confusion, le token peut ne pas être disponible
-keep class com.meizu.** {*;}
-dontwarn com.meizu.**

# oppo
-keep class com.heytap.** {*;}
-dontwarn com.heytap.**

# vivo
-keep class com.vivo.** {*;}
-dontwarn com.vivo.**

-ignorewarnings
-keepattributes *Annotation*
-keepattributes Exceptions
-keepattributes InnerClasses
-keepattributes Signature
-keepattributes SourceFile,LineNumberTable
-keep class com.huawei.hianalytics.**{*;}
-keep class com.huawei.updatesdk.**{*;}
-keep class com.huawei.hms.**{*;}
-keep class com.hihonor.push.**{*; }

            
Afficher ce bloc de code dans la fenêtre flottante
icon
Contactez-nous