web-dev-qa-db-fra.com

Comment convertir des fichiers .apk en java

Comment convertir des fichiers .apk en Java sous Android.

12
user555910

L’extension utilisée par Google pour les applications Android (APK) peut sembler un peu compliquée au début, mais ce n’est vraiment pas le cas. En fait, un fichier .apk n’est rien d’autre qu’un fichier .Zip déguisé en .apk. C’est la raison, mais vous l’obtenez. Essentiellement, si on voulait voir ce qu’il y avait dans une application, il lui suffirait de changer l’extension de nom-application.apk en nom-application.Zip, décompressez-la. Et voilà: le contenu de .apk! Nous n’avons pas encore fini, lisez plus après la pause. C'est ici que ça devient difficile. Dans le dossier où vous avez décompressé le contenu de l'application, vous trouverez un fichier nommé classes.dex. C’est le fichier le plus important de toute l’application, contenant tous les fichiers Java, mais il est chiffré! Pas de soucis, cela peut être facilement résolu. Vous aurez besoin de deux choses:

  1. Dex2Jar de http://code.google.com/p/dex2jar/
  2. Un décompilateur Java classique, tel que JD from http://Java.decompiler.free.fr

Copiez le fichier classes.dex dans le dossier où vous avez dézippé Dex2Jar et exécutez-le à partir de la ligne de commande: "dex2jar.bat classes.dex" Cela produira un fichier, nommé étrangement: "classes.dex.dex2jar.jar". Si WinRAR est installé, vous pouvez simplement décompresser les fichiers. Si ce n’est pas le cas, installez-le . Maintenant, ajustez-le à votre guise!

16
sajjad ali

sa facile suffit de suivre les 4 étapes ci-dessous:

1) Décompressez votre .apk dans le dossier et récupérez le fichier classes.dex.

2) Placez ce fichier classes.dex dans dex2jar (vous devez le télécharger) et exécutez ./dex2jar.sh classes.dex dans le terminal.

3) Il créera classes.dex.dex2jar.jar, placez-le dans jd-gui (vous devriez le télécharger).

4) Exécutez ./jd-gui classes.dex.dex2jar.jar --- générera les fichiers .Java.

8
Sam

Vous ne pouvez pas simplement convertir un pot en apk. Il doit être compilé pour Android. La bibliothèque Java d'Android ne contient pas tous les éléments swing du langage Java normal. Il est donc probable que l'application devra être réécrite pour fonctionner sur Android.

Assez sûr que les MIDlets (pots MIDP) n'utilisent pas Swing ou awt. Ils ont une interface utilisateur distincte sous javax.microedition.lcdui (http://Java.Sun.com/javame/reference/apis/jsr037/javax/microedition/lcdui/package-summary.html)

En ce qui concerne la conversion des programmes MIDP en fichiers APK exécutables, il existe certainement un moyen. Techniquement, ce n'est pas une conversion mais l'utilisation d'un wrapper autour du MIDlet non converti. C’est l’approche utilisée par Opera Mini pour Android. Plus d'informations:

http://edugoing.com/qna/index.php?qa=unanswered&start=40

0
Vandana