Salut à toi public !!
Lorsque l’on est un pionnier de l’application android, il arrive que l’on souhaite récupérer le contenu java des applications existantes…
OUI MAIS !! Google ne l’entends pas de cette oreille puisqu’il tente vainement de censurer l’uncensurable (ben oui fallait choisir autre chose que du java si on voulais pas taper dans l’open source hein !)
par l’intermédiaire d’un fichier .dex “censé” rendre les .class inaccessibles (et donc par conséquent les .java de l’application également).
Voici la marche a suivre pour dé-compiler un apk et en obtenir les sources java (ainsi que les images et pas mal d’autres broutilles):
- Téléchargez ce petit soft de ma fabrication qui nous évite quelques étapes/téléchargements contraignants
- Lancez DeKompoid (je sais , c’est technique) : vous atterrissez normalement la dessus :
- Deux champs a renseigner : Le chemin absolu vers le fichier .apk a décompiler, et le chemin absolu vers le dossier ou vous souhaitez le décompiler, cliquez sur le bouton “Décompiler” , TADDAAAHHHH !!!
- Les classes se trouvent dans src/sous le format .class , les images dans res\drawable (par défaut, mais cela dépend de la structure de votre application) les fichiers xml quand a eux sont malheureusement indécryptable pour le moment.
- Vous n’avez plus qu’a lire vos .class avec un programme de décompilation de .class tels que l’excellent (et gratuit) jdecompiler téléchargeable ici.
Je suis bien entendu tous ouie si quelqu’un souhaite apporter des améliorations au processus.
Bien a vous.
Idle
merci 🙂
Bonjour
je suis développeur et je suis d’accord pour t’aider à améliorer ton programme (j’ai remarqué quelques petit bug). J’ai recu une formation de développeur ou l’on m’a bien appris a chassé le bug.
Dis-moi si tu est d’accord et je donnerais mon e-mail.
Bonne continuation.
Merci! Mais comment re-compiler?
Personnellement j’utilise éclipse avec le plugin ADT et le sdk de google il suffit donc de faire click droit sur ton projet -> export -> android application (apk) et c’est bon ^^ . Il y a évidemment moyens de le faire sans éclipse mais c’est bien plus casse couille et potentiellement moins propre a la fin :).
Bravo pour ton programme.
Je souhaite justement éditer les sources décompilées d’un APK avec Eclipse mais je ne sais pas comment faire.
Je ne vais surement pas te paraitre très doué mais peux tu m’indiquer comment tu procèdes avec Eclipse et le répertoire obtenu précédemment ?
Typiquement import, ouvrir un projet ?
Merci d’avance
Disons qu’une fois dé-compilé le programme n’a pas forcement exactement la même tronche qu’un projet eclipse.
Si tu as le plugin ADT sur ton eclipse, tu peux créer un nouveau projet puis dans l’explorateur window copier les fichiers java de le dossier approprié, les fixer xml dans les asset etc..
Salut,
J’aurais bien aimer tester ton programme mais a chaque fois il ne trouve pas mon JRE. Je ne sais pas ou il essaie d’aller le chercher mais impossible. Je sais qu’avec les versions 64 bits il y en sans arrêt des soucis avec “Programmes” et “Programmes (x86)” mais moi je l’ai dans les 2 donc je ne sais pas ou est le problème.
Salut, désolé de te répondre si tard, ton commentaire s’est perdu dans mon panel admin ^^.
Le problème viens surement de ton installation de la JRE, mon programme appelle le chemin définis dans la variable d’environnement JAVA_HOME , regarde dans tes variables d’environnement si le soucis ne viens pas de la 🙂
Merci a toi !
Bonjour,
Avant tout je vous remercie pour votre soft qui est tres facile à utiliser malheureusment j’arrive pas à decompiler pour voir le code source d’une application ‘ RF signal TRACKER’.
voici l’erreur qui me mets :
erreur lors de la compilation : java.lang.RunetimeException:RunetimeException:Error in method:[Lcom/hotrod/utility/rfsignaltrackereclair/DatabaseAssistant;.exportKMLTable(Ljava/lang/string;)V]
je sais pas pourquoi ça marche pas , est ce que le code est tres protege ou quoi ?
merci d’avance pour votre aide.
cordialement
MMhh, la je ne vois pas du tout d’ou ça pourrais venir , désolé… peut être en réinstallant ta JRE…
salut idleman,
merci pour votre réponse, j’ai réinstallé encore la JRE mais sans résultats.
Je me demande est ce que c’est possible que je vous envoie l’APK RF signal TRACKER et vous tester si vous arriver à voir l’arborescence du code?
bonne journée.
Désolé, je n’ai pas le temps pour ça, si le logiciel ne fonctionne pas chez toi c’est certainement que l’application est trop complexe ou encrypté d’une façon particulière.
Bonjour,
pas de soucis…merci en tout cas pour votre reponse.
juste une petite question : est ce que votre soft ça marche pour toute les appli ou il y’a des appli ou ça marche pas?
merci encore
Jusqu’ici ça avait toujours fonctionné de mon côté, mais android évolue, mon programme non, il est donc possible que certains APK ne passent plus correctement à la décompilation :).
pour info
Décompiler une application android (apk) avec DeKomPoide
perso, je renome le fichier *.apk en *.rar ensuite je lance winrar qui fait la meme chose que DeKomPoide
Dekompoid fait bien plus que ça :), il commence évidemment par faire la manip dont tu parles, puis il traduit le .dex ainsi décompressé en .jar, ce qui n’est pas possible en changeant simplement l’extension et reconstitue l’arborescence exacte en .class java
et pour CoC?
oO
Bonsoir,
ben justement je travaille dessut, du coup je vous dirait si sa fonctionne.
CDLT
Ton serveur est super lent pour télécharger ton application. J’ai pas un bon réseau mais quand même ^^’
Merci pour le soft.
Je sais, j’héberge mon serveur sur ma connexion perso, et free n’est pas très sympa avec mon nouvel appart je suis a 3 plombes de la borne désolé 🙂
C’est intelligent ce que tu as fais.
Y a-t-il un moyen de sécuriser son apk pour qu’il ne soit pas décompiler?
Pas vraiment, le java n’est pas fait pour rester secret ^^, le meilleur moyen reste l’obsfuscation, c’est a dire changer automatiquement tous les noms de fonctions et variables a la compilation par des lettres non significative
merci pour la réponse
salut, je viens d’essayer ton prog mais je ne vois pas la difference avec 7-zip. Par contre si t’as un truc en francais pour ouvrir et modifier les xml d’un apk je suis preneur …
ainsi que les signatures car autosign ne marche pas … gracias amigo
La différence, c’est que ca décompile aussi le .dex et que ça recréé l’arborescence :), pour décompiler les xml il y a un programme existant mais je n’arrive plus a me rappeler le nom c’est trop vieux désolé
ok tans pis ! accepte moi sur skype 2 min, j’ai un truc a te demander …
Désolé je n’ai plus skype d’installé depuis un bail ^^
Mince alors, une recherche Google plus tard, je tombe sur ce blog à tête connue 😀
hé hé hé, le idle est parttttouuuuut :p, j’y suis pour rien si google prends du plaisir à relayer mes conneries, comme quoi c’est vraiment un moteur sur le déclin XD.
MERCI BCP POUR LAPPPLII !!!!
SIMPLE
EFFICE
EN FRANCAIS !
oui jefais du capslock. Je suis heureux.
Ya pas de quoi ^^
Salut,
Est que tu aurais un tuto pour recompiler avec ADT ?
Merci
Moi non mais tuto mobile a toute une série de tuto sur la création d’un projet android (dont l’utilisation de adt) : http://www.tutomobile.fr/category/tutorial-android/page/5/
Salut, ton appli décompile quelques applis, mais celle de paf le chien, elle veux pas …
Screen : http://img4.hostingpics.net/pics/806182bug.png
C’est qu’android évolue et pas mon appli ^^, il y à donc des chances que ça foire pour certaines applications désolé 🙂
Salut, je pense que je suis sûrement le énième à poser 1 kestion ballote (oui je débute aussi 🙂 ) du genre, mais je cherche à décompiler l’appli sms/mms d’origine d’ics, pour augmenter la limite d’sms avant le passage en mms, penses tu que ton soft pourrais m’aider?
Meci d’avance, et merci de partager ton travail, c’est grace a des gens kom toi ke le shmilblik avance. Lol
PS: j’ai 1 connexion via clé 3g donc je cherche à éviter de télécharger de l’inutile…
Mon appli permet de de-compiler du mieux qu’elle peux un .apk, après ce que tu parvient à en faire derrière dépend de tes compétences ^^, je ne peux donc rien te garantir par rapport à ca, tu devra certainement faire quelques adaptation pour pouvoir modifier ta limite et le recompiler, de plus android à beaucoup changé depuis que j’ai créé cette application, il est possible que certaines parties ne fonctionnent plus aussi bien qu’avant, bref trop d’inconnues pour te répondre 🙂
Ok merci, c’est vrai que j’ai peut être développé un peu trop Lol
Je souhaitais juste savoir si sous ICS ça pouvait tjs fonctionner,, vu que comme tu le dis toi même, ton appli commence à dater.
Mais grand merci d’avoir répondu. Je vais tenter le coup, c’est sympa
Salut, heu… les sources de l’appli SMS sont dispo en prenant les sources d’android tout simplement dans un /system je crois
Ton programme n’est pas compatible avec JRE 1.8.x
J’aimerai bien prendre contact avec toi car tu me sembles plutôt calé niveau DEV.J’ai un projet qui pourrait, me semble-t-il t’interressé.
Appel au DEV ! 👿
J’avais pas trop d’espoir vu l’ancienneté du tuto, mais c’est nickel.
Juste une erreur (Java runtime exception je sais plus quoi), mais tous les fichiers dont j’avais besoin avaient l’air d’être là.
Je m’attendais a galérer toute la soirée mais en 3 secondes c’était plié, merci.
Ça mériterais de sortir en version propre avec deux ou trois fonctionnalités en plus, parce que pour info l’article arrive dans les premiers sur google pour la recherche “decompiler apk”. :siffle:
🙂 merci beaucoup
bjr! à vous amis lecteurs! tout à fait novice dans cet art; j’aimerais trouver une bonne âme pour me décompiler deux applis. je les ai télécharger sur tablette mais impossible de savoir où elles sont stockées. Merci de votre aide si vous pouvez.
dommage le lien ne marche plus
J’ai mis à jour le lien 🙂
Bonjour,
Merci pour cet article.
J’ai un développeur qui m’a remis un .apk et il m’a pas fournis le code car il me demande de l’argent pour ça or au depart on sais bien mis d’accord pour qu’il me fournis tous.
La je suis bloqué mais je ne vais pas tarder a démarrer la machine ( un avocat)
je voulais savoir si dans ce cas votre procedure pourra m’aider pour récuperer les sources et signé l’apk pour la mettre en ligne.
Merci beaucoup pour ton aide précieuse.
La première étape avec DeKompoide a bien marché.
A la suivante maintenant pour décompiler les .class ….
Le logiciel ne s’installe pas sur mon PC
Windows 7;32bit
Ça serait possible une version universelle ? Je n’arrive pas a lancer le programme avec Wine