Comment décompiler une application Android Apk

Récemment, nous avons publié un guide sur la façon d’ajouter des dépendances pour uniquement des produits spécifiques. Après avoir mis en œuvre les étapes nécessaires, nous voulions nous assurer que la finale.apk ne contient en fait plus de classes indésirables. Dans cet article, nous allons vous montrer comment vérifier quelles classes et ressources se trouvent dans un apk.

Remarque: ce guide est conçu pour décompiler votre propre apk, et non le travail acharné des autres développeurs. Ainsi, nous n’avons inclus aucune étape de rétro-ingénierie ou de contournement de l’obscurcissement du code.

>

Préparation: Installation des outils

Un apk Android est essentiellement un répertoire compressé, qui contient certaines ressources brutes (images, fichiers de mise en page, ..) et un fichier classes.dex. Ce fichier contient tout le code réel et nous intéresse le plus. Téléchargeons tous les outils dont nous avons besoin:

  • Vous devrez décompresser l’apk. Vous pouvez utiliser les fonctionnalités intégrées de votre système d’exploitation ou installer votre archiveur (non) préféré comme 7-Zip.
  • Afin d’inverser le fichier classes.dex en un .jar, vous devrez télécharger l’outil dex2jar.
  • Enfin, afin de rendre le fichier .jar lisible pour l’œil humain, téléchargez et exécutez JD-Gui.

Récupérer votre code

D’accord, il est maintenant temps de faire le travail réel. Copiez votre fichier APK dans un répertoire dans lequel vous souhaitez travailler. Décompressez l’apk à l’aide de l’outil de votre choix et vous devriez obtenir un répertoire avec quelques sous-répertoires et quelques fichiers.

Décompressé.apk

N’hésitez pas à parcourir le répertoire AndroidManifest.xml ou le répertoire res. La pièce la plus intéressante est le classes.dex. Ainsi, passez à votre outil dex2jar téléchargé et ouvrez un nouveau terminal.

Si vous êtes sous Mac OS, exécutez sh d2j-dex2jar.sh -f -o output.jar your_app_input.apk. Les utilisateurs Windows peuvent utiliser le fichier .bat pour créer le fichier .jar. Une fois l’outil exécuté, accédez au nouveau fichier .jar.

Affichage du Code décompilé

Enfin, démarrez l’outil JD-GUI téléchargé et utilisez-le pour ouvrir le fichier .jar.

Vue du code décompilé avec JD-GUI

Vous pouvez parcourir tous les packages et classes qui se trouvent dans votre apk. Le code est une version dépouillée et ne contient aucun commentaire ou structure redondante que vous voyez dans votreE. N’oubliez pas qu’il s’agit de la minimisation compilée de votre application. Néanmoins, il devrait vous donner suffisamment d’informations pour en apprendre davantage sur les bases de l’application. Par exemple, cela nous a aidés à vérifier qu’il n’y avait plus de packages liés à la bibliothèque admob dans l’application.

Autres options

Si vous avez juste besoin d’une décompilation rapide, vous pouvez utiliser l’outil en ligne à www.decompileandroid.com /.

Pour des fins de décompilation plus avancées, vous pouvez jeter un œil à apktool, qui donne beaucoup d’aides supplémentaires.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *