À propos des deux méthodes de décompilation du package d'installation apk (y compris la décompilation de classes.dex) À propos des deux méthodes de décompilation du package d'installation apk (y compris la décompilation de classes.dex)

Deux méthodes pour décompiler le package d'installation apk (y compris la décompilation de classes.dex)

 

Comme nous le savons tous, les packages d'installation d'applications mobiles que nous utilisons pour le développement sont des fichiers apk. Une fois le développement de l'application Android terminé, nous finirons par regrouper l'application dans un fichier apk que les utilisateurs pourront installer. Pour le moment, il est difficile de voir les ressources utilisées lors du développement de cette application. Le fichier et le code sont là, donc il y a une chose à décompiler. Grâce à certains outils, le fichier apk peut toujours être décompilé.Après la décompilation, nous pouvons voir les fichiers de ressources (images), la mise en page, les styles, le code d'implémentation associé, etc. utilisés pour développer cette application.

Remarque: La méthode de décompilation partagée ici n'est pas d'encourager tout le monde à faire de la destruction et du craquage et à réinstaller, le but principal est de promouvoir les développeurs pour apprendre, apprendre des autres et s'améliorer

1. Téléchargement d'outils

Si un travailleur veut bien faire son travail, il doit d'abord affûter son arme, et il doit d'abord télécharger les trois outils suivants:

  1. apktool ( obtenir des fichiers pour extraire des fichiers image et des fichiers de mise en page pour les visualiser
  2. dex2jar (pour obtenir le code source, vous pouvez convertir classes.dex en fichier classes_dex2jar.jar )
  3. jd-gui ( vérifiez le code source, vérifiez le code source dans le fichier classes_dex2jar.jar )

 

Adresse de téléchargement:

1. adresse de téléchargement d'apktool: https://bitbucket.org/iBotPeaches/apktool/downloads

 

 

1.1 Sélectionnez ensuite la dernière version et cliquez pour télécharger

 

 

1.2 Cliquez sur Enregistrer pour démarrer le téléchargement

 

 

Remarque: Il est recommandé d'utiliser le navigateur IE pour ouvrir ce lien, car lorsque l'auteur utilise d'autres navigateurs non-navigateur, le lien de téléchargement disparaît (comme indiqué ci-dessous), afin d'éviter des problèmes inutiles, téléchargez simplement directement avec le navigateur IE.

 

 

 

1.3 Après le téléchargement, vous obtiendrez un fichier .jar

 

 

 

Adresse de téléchargement 2.dex2jar: http://sourceforge.net/projects/dex2jar/files/

 

2.1 Cliquez pour télécharger la dernière version

 

 

2.2 Il y aura un compte à rebours ici, attendez patiemment pour terminer le téléchargement en quelques secondes

 

 

2.3 Après le téléchargement, vous obtiendrez le package compressé comme indiqué ci-dessous:

 

 

 

Adresse de téléchargement 3.jd-gui: http://jd.benow.ca/

 

 

3.1 Trouver la colonne JD-GUI

 

 

3.2 Sélectionnez la version du système à télécharger, la chose que j'ai choisie ici est la version Windows

 

 

3.3 Après le téléchargement, vous obtiendrez un autre package compressé:

 

 

----------------------------------------------- De cette façon, nous Les outils requis sont téléchargés ------------------------------------- ----

 

 

Certains développeurs peuvent rencontrer la situation selon laquelle la page Web ne peut pas être ouverte et peuvent télécharger directement la boîte à outils que j'ai organisée (si la ressource se bloque, vous pouvez commenter dans la zone Aite me):

Lien: https://pan.baidu.com/s/10c3ljZs1W75EUAknfcXrsQ 
code d'extraction: js9q 

Si vous ne voulez pas utiliser Baidu Cloud, dépensez juste un peu de points pour le télécharger sur CSDN ↓↓↓

Adresse de téléchargement de la boîte à outils CSDN: https://download.csdn.net/download/nobody_else_/11583041

 

 

Deux, processus de décompilation Apk

Tout d'abord, afin de faciliter l'opération, placez les trois outils téléchargés précédemment dans le même fichier (la position est personnalisée, essayez de la placer dans un endroit pratique):

Voici où je l'ai mis

 

 

1. Décompressez ensuite dex2jar-2.0.zip et jd-gui-windows-1.4.0.zip dans le dossier actuel

 

 

2. Copiez ensuite le fichier .apk du package d'installation que vous souhaitez décompiler dans ce répertoire, prêt à décompiler:

 

 

2.1 Démarrer la décompilation

 

1. Cliquez sur le menu Démarrer dans le coin inférieur gauche pour accéder à la ligne de commande CMD (appuyez directement sur la touche Windows + R et entrez cmd):

 

 

 

2. Entrez l'emplacement du fichier des trois outils ci-dessus:

 

 

3. Entrez "cd" + emplacement du fichier (il y a un espace après le cd), puis appuyez sur Entrée:

 

 

4. Continuez ensuite à entrer le symbole du disque où se trouve l'outil + ":", ici je suis le lecteur G, donc entrez "g:", il entrera l'emplacement de l'outil

 

 

L'étape suivante est l'étape importante de la décompilation. Exécutez l' outil apktool_2.3.4.jar . Après avoir installé java sur l' ordinateur et configuré l'environnement jdk (les développeurs l'ont généralement, les non-développeurs peuvent fonctionner par Baidu), exécutez le package jar exécutable. La commande est la suivante:

java -jar jar包名.jar
  
  

 

Selon l'emplacement du fichier outil et l'emplacement du fichier .apk sur mon ordinateur, vous pouvez saisir après le symbole ">":

java -jar apktool_2.3.4.jar d -f G: \ install package \ APK decompilation \ logistic assistant 2.0.apk -o OK

 

Cela signifie que jar apktool_2.3.4.jar est utilisé par Java pour décompiler le fichier G: \ installation package \ APK decompilation \ logistic assistant 2.0.apk et que les fichiers de code source obtenus par décompilation sont placés dans le fichier OK .

 

 

5. Appuyez sur Entrée pour exécuter et attendre la fin (l'image montre l'état d'achèvement)

 

 

6. Revenez au dossier et vous verrez que le dossier OK est généré dans le fichier de même niveau de la boîte à outils:

 

 

7. Ouvrez ce dossier, vous pouvez voir les fichiers décompilés à l'intérieur:

 

 

Après un travail acharné, il est enfin temps de lire le code!

 

 

Est-ce que c'est fait? Mais non. . .

 

Le titre de ce blog mentionne clairement 2 méthodes, qu'en est-il de l'autre méthode? Ne vous inquiétez pas, continuez à présenter. La deuxième méthode est principalement pour le cas où ce qui précède ne peut pas être décompilé avec succès:

 

Décompiler en utilisant la méthode ci-dessus, cmd petite boîte noire affiche: Le fichier d'entrée (XXX) est introuvable ou n'est pas lisible.

Remarque: <XXX> est le nom du fichier

 

Si vous vérifiez votre fonctionnement plusieurs fois, vous pouvez modifier le nom du fichier apk et réessayer. S'il ne fonctionne toujours pas, cela signifie que le fichier apk ne peut pas être décompilé par la méthode ci-dessus. Que devons-nous faire alors? Cela utilisera la méthode de décompilation classes.dex décrite ci-dessous ↓↓↓

 

 

décompilation de classes.dex

 

1. Téléchargez le nouvel outil dex2jar ( ici dex2jar est différent de celui déjà téléchargé ci-dessus , vous devez le re-télécharger )

Ici, j'ai emballé l'outil et l'ai mis dans le disque cloud (si la ressource se bloque, vous pouvez commenter la zone Aite me)

Lien: https://pan.baidu.com/s/17uIKAssf_9kljzKyZOEQeQ 
code d'extraction: fu7h 

 

Si vous ne voulez pas utiliser Baidu Cloud, dépensez juste un peu de points pour le télécharger sur CSDN ↓↓↓

Adresse de téléchargement de la boîte à outils: https://download.csdn.net/download/nobody_else_/11583031

 

Décompressez la boîte à outils téléchargée et trouvez qu'il y a deux dossiers: dex2jar (pas le même qu'avant) et jd-gui (le même qu'avant)

 

 

Ensuite, traitez le fichier apk

Voici toujours le fichier Fly.apk comme exemple pour démontrer:

1. Modifiez le suffixe du fichier apk à décompiler en .zip (l'original est .apk):

Remarque: Si l'ordinateur n'affiche pas le suffixe du fichier, ou comment modifier le nom du suffixe, vous pouvez utiliser les mots clés Baidu: modifier le nom du suffixe du fichier

 

 

2. Une boîte de confirmation apparaît, cliquez sur Oui

 

 

3. Décompressez le fichier zip que vous venez de renommer, trouvez le fichier classes.dex à l' intérieur et copiez

 

 

4. Ouvrez le dossier et copiez le fichier classes.dex

 

 

 

5. Ensuite, copiez-le dans le dossier dex2jar extrait par l'outil nouvellement téléchargé

 

 

6. mettre dex2jar.bat répertoire

 

 

-------------------------------------------------- --------- Tous les éléments ci-dessus sont prêts à démarrer la décompilation ------------------------------- ----------

 

 

Trois, commencez la décompilation

 

1. Cliquez sur le menu Démarrer dans le coin inférieur gauche pour accéder à la ligne de commande CMD (appuyez directement sur la touche Windows + R et entrez cmd):

La même chose que l'étape précédente, il n'y a pas de longue haleine, directement dans l'instruction dex2jar dans le secteur :

 

 

2. Entrez la commande dex2jar.bat classes.dex et appuyez sur Entrée pour démarrer la décompilation

 

 

3. Commencez à décompiler

 

4. Une fois la compilation terminée, comme indiqué ci-dessous:

 

5. À ce stade , un fichier classes_dex2jar.jar sera généré dans le dossier dex2jar , qui est le fichier de code source que nous avons travaillé dur pour sortir.

 

 

-------------------------------------------------- ---------- Ensuite, l'étape suivante consiste à vérifier le code source --------------------------------- ---------------

 

 

Quatrièmement, afficher le code source obtenu par décompilation

 

1. Ouvrez une autre boîte à outils téléchargée jd-gui

 

 

2. Exécutez JD-GUI (jd-gui.exe), voir le logiciel source ici

 

 

3. Cliquez sur Fichier-> Ouvrir un fichier dans le coin supérieur gauche à son tour , recherchez et ouvrez le package jar généré ci-dessus dans la fenêtre du fichier contextuel, et vous pouvez voir le code source:

 

 

 

4. Comme indiqué ici, c'est le code source que nous avons obtenu grâce à tout le travail acharné!

 

------------------------------ Maintenant, apprenez le code que vous avez apprécié! ! ! ----------------------

 

 

 

De plus, lorsque vous utilisez CMD pour décompiler, vous pouvez rencontrer des problèmes inattendus (également un peu rangés ici):

1.Le fichier d'entrée est introuvable ou n'est pas lisible.

2. Le répertoire de destination (C: \ Users \ user \ ...) existe déjà. Utilisez l'option -f si vous souhaitez l'écraser.

3.Exception dans le thread "principal" brut.androlib.AndrolibException: impossible de décoder le fichier ars c fil ..........

 

La solution:

1 et 2 sont dus au fait que lorsque apktool est mis à niveau vers plus de 2.0, la méthode d'utilisation a été remplacée et le format est: apktool d [-s] -f <apkPath> -o <folderPath> Voir l'aide

3 C'est parce que la version d'apktool est trop faible, veuillez mettre à niveau vers la dernière version, adresse: https://bitbucket.org/iBotPeaches/apktool/downloads

 

 

 

Il n'est pas facile pour le Student Party d'écrire ce blog toute la nuit. J'espère pouvoir aider tous ceux qui se débattent sur la route d'attaque. S'il y a des lacunes, j'espère me corriger. Si je pense que c'est utile ou aime, j'espère vous faire un compliment. (~  ̄ ▽  ̄) ~ 

 

Publié 24 articles originaux · loué 4 · visites 2038

Si vous souhaitez réimprimer, veuillez poster l'adresse d'origine: https://blog.csdn.net/Nobody_else_/article/details/83996441

Je suppose que tu aimes

Origine blog.csdn.net/weixin_44226263/article/details/104460296
conseillé
Classement