Ceci est l'article sur le 24ème jour du "Calendrier de l'Avent de l'ingénieur athlétique 2017". Le 23ème jour était @ yuzu_afro "Faire un sapin de Noël brillant et sonore avec Raspberry Pi".
Cette fois ** J'ai perdu le code source de l'application publiée sur Google Play **
Même si le monde flotte complètement dans l'atmosphère de Noël Nous sommes confrontés à une situation misérable sans assistance Domo est Nagao Demain est ** l'anniversaire du Christ ** C'est ** Reverse engineering de votre propre application ** (ci-après Rivaen) ** Festival de la résurrection de l'application **
Tout d'abord, les préparatifs nécessaires quoi que vous fassiez ** Préparez l'apk que vous souhaitez réactiver ** Je partirai de
(Si vous avez déjà l'application que vous souhaitez réactiver en .apk, vous n'avez pas besoin de ce flux)
Il existe également un moyen de le faire avec une commande Il est ** rapide ** d'utiliser ** l'application d'extraction apk ** sur Google Play.
** Par exemple, une telle application ** https://play.google.com/store/apps/details?id=com.pandaz.apkextraction
Lorsque vous l'installez sur votre smartphone et le démarrez
Les applications sur votre smartphone sont alignées dans une rangée Vérifiez l'application que vous recherchez et appuyez sur ** Extraction apk ** Après cela, vous pouvez personnaliser ** apk ** en le téléversant sur Google Drive avec le bouton de partage.
Commençons par le simple
Grosso modo ** Vous pouvez voir les deux en lançant l'apk dans Android Studio ** est
Premier ** Placez l'apk ** que vous avez obtenu précédemment quelque part sur votre ** ordinateur ** à l'avance. Et Dans Android Studio ** Fichier → Nouveau → Nouveau projet ** Choisissez le nom du projet de manière appropriée et créez un projet avec Suivant → Suivant ... Avec le projet créé ouvert ** Construire → Analyser l'APK **
Une boîte de dialogue de sélection de fichier apparaîtra Sélectionnez l'apk que vous mettez sur votre ordinateur à l'avance Ensuite, cet écran s'ouvrira (cette fois j'utilise l'apk de l'application sample-app)
Facile à voir ** Cliquez une fois sur le fichier xml que vous souhaitez voir ** Puis
Le contenu de xml est affiché dans la partie inférieure ** Fichiers image ** Quelque chose est généralement dans le ** dessinable habituel ** Vous pouvez le voir en ** un seul clic **
** [2] et [3] sont terminés **
Il y a beaucoup plus à faire que [2] et [3]
Changez simplement ** apk ** en ** zip ** Tout ce que vous avez à faire est de changer le ** nom de fichier ** de l'apk de ** XXX.apk ** à ** XXX.zip **
** Normalement, il est développé en double-cliquant simplement dessus ** ** Double-cliquez sur ce zip ** L'un après l'autre ** Il n'y a aucun signe que quelque chose comme un parent zip est né ** et s'est développé ... Face à une telle ** situation de fermeture éclair matriochka **
The Unarchiver https://itunes.apple.com/jp/app/the-unarchiver/id425424353?mt=12 Installez ceci sur ** Mac ** Cliquez avec le bouton droit sur ** zip ** et sélectionnez cette application pour la développer. (Certaines des applications similaires sont devenues ** Matryoshka **, je publierai donc celle qui a fonctionné.)
C'est dans le prochain dossier développé classes.dex ** Générer un fichier jar ** à partir du fichier Comment faire
dex2jar https://sourceforge.net/projects/dex2jar/ Téléchargez le truc (** dex2jar-2.0.zip **) ** Extraire dans le même dossier où se trouve le dossier dans lequel vous avez extrait l'application ** (Ce zip est ** double-cliqué **, mais il ne devient pas matriochka et est développé normalement **) Cette fois, Nagao a créé un dossier appelé Rivaen for work ** J'ai mis le ** dossier où l'application a été développée ** et le dossier ** dex2jar-2.0 ** dans le dossier ** Rivaen ** C'est
alors
$ cd Rivaen
(Accédez au répertoire Rivaen)
Appuyez sur la commande suivante
$ cd dex2jar-2.0/
$ chmod +x *
$ cd ..
$ dex2jar-2.0/d2j-dex2jar.sh sample-app/classes.dex
↑ Avez-vous fait Nani? 1ère ligne déplacée vers le dossier dex2jar-2.0 2ème ligne: donnez l'autorisation d'exécution au fichier exécutable dans le dossier dex2jar-2.0. 3e ligne Retour au dossier Rivaen Ligne 4 Générez un fichier jar à partir de classes.dex en utilisant un shell appelé d2j-dex2jar.sh est Si vous faites jusqu'à présent, ce sera dans le dossier Rivaen
classes-dex2jar.jar Un ** fichier jar ** sera créé!
Et c'est parti! Une fois arrivé ici
JD-GUI http://jd.benow.ca/ ** Installez l'application sur votre Mac ** Si vous faites un clic droit sur le ** fichier jar que vous venez de créer ** et ouvrez-le avec cette application Vous devriez enfin pouvoir voir le ** code source Java **!
(2018/7/17 s'est toujours écrasé sur High Sierra) Si vous pouvez le voir en toute sécurité, c ’est fini. Ce crash semble se produire sur ** Sierra ** et ** HighSierra ** Pour être honnête, je pensais que c'était ** la fin du match ** Qu'est-ce qu'une application de décryptage de fichiers de classe? ** Je ne trouve rien d'autre que JD-GUI ** (T_T) Mais cette fois ** Pourquoi Nagao fait-il Rivaen en premier lieu **? ** Parce que j'ai perdu le code source important de l'application publiée sur Google Play ** Alors
Je ne sais pas pourquoi c'est fini Je n'ai pas d'autre choix que de faire quelque chose à ce sujet
Sur la page où je suis arrivé à la recherche d'une solution ** Si vous construisez vous-même le JD-GUI sur github, c'est cool! ** ** C'était
Faisons le
Vous pouvez le faire dans n'importe quel répertoire
Dans un endroit facile à comprendre pour le moment
$ cd Rivaen
(Déplacer vers le répertoire Rivaen)
** Commande pour créer JD-GUI par vous-même **
$ git clone https://github.com/java-decompiler/jd-gui.git
$ cd jd-gui
$ ./gradlew installOsxDist
↑ Avez-vous fait Nani? 1ère ligne: Clonez le code source JD-GUI depuis github 2ème ligne déplacée dans le jd-gui cloné 3e ligne: créez l'application avec gradle est Si tu fais ça ** Rivaen → jd-gui → → construire → installer → jd-gui-osx ** Dans ** JD-GUI.app ** est prêt ...! Il a fallu moins d'une minute pour cloner et construire
Maintenant! Avec cela, lorsque vous ouvrez enfin le fichier jar que vous avez créé plus tôt en cliquant avec le bouton droit de la souris avec celui-ci
** J'ai pu voir! ** ** (Au fait, c'est le code source écrit en Kotlin)
[1] est terminé ** Merci pour votre soutien! !! ** **
Conservez le code source de l'application dans un endroit sûr pour ne pas le perdre
** Demain, c'est enfin Noël est la dernière personne à décorer @Nkzn! ** **
Recommended Posts