Existe-t-il un outil d'obscurcissement à utiliser avec Android Studio ? Le plug-in IntelliGuard est déclaré être pris en charge par le Studio, mais il ne fonctionne pas réellement en raison du plug-in AntSupport manquant. Je ne peux pas en trouver un dans le référentiel. Des idées?
P.S. Android Le processus de construction de Studio est basé sur Gradle, donc je ne m'attendrais pas du tout à voir du support Ant. Peut-être que je me trompe.
Pour masquer le code dans Android studio, accédez simplement à votre fichier build.gradle dans votre Android projet Studio:
Modifiez la propriété minifyEnabled de false à true
C'est une offuscation de base.
Après avoir généré l'apk, vous pouvez voir le résultat de l'obscurcissement décompilant l'apk avec n'importe quel logiciel, par exemple, cette page peut vous aider:
http://www.decompileandroid.com/
Dans le résultat de l'obscurcissement, vous verrez des classes avec un nom: a, b, c ....
Et les variables et méthodes d'obscurcissement auront également des noms comme aa, c, ac ...
Pour brouiller le code sous une forme plus complexe, vous pouvez aller dans votre application de répertoire racine et créer un fichier .pro, par exemple dans l'image suivante, j'ai créé le fichier: proguard-rules-new.pro, dans le même répertoire, vous devez voir un fichier appelé proguard-rules.pro
Maintenant, ajoutez le fichier que vous avez créé au fichier build.gradle
Et modifiez le fichier .pro que vous avez créé avec vos propres règles de progression personnalisées
Activez d'abord minifyEnabled
dans votre fichier build.gradle, comme
minifyEnabled true
Après cela, ajoutez les lignes ci-dessous dans le fichier progurad-rules.txt
-keep class yourpackage.** { *; }
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-verbose
Pour vérifier que son fonctionnement fonctionne bien, allez à:
http://www.javadecompilers.com/apktool site Web afin que vous puissiez vérifier après décompilation.
Cela fonctionnera et vos classes seront complètement cachées.
Android Septembre 2018 sort un nouvel outil R8 outil de rétrécissement et d'obscurcissement.
R8 - R8 est un Java réducteur de code et outil de minification qui convertit Java code d'octet en code dex optimisé)
gradle.properties
Android.enableR8 = true
comme
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
org.gradle.jvmargs=-Xmx1536m
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
Android.enableR8 = true
Exigences minimales :
Proguard est bien pris en charge sur Android studio. Vous devez configurer Gradle pour l'exécuter. Instructions: http://tools.Android.com/tech-docs/new-build -system/user-guide # TOC-Running-ProGuard