Manchmal ist es doch sehr praktisch eine APK Datei zu dekompilieren, z.B. um ein wenig Reverse Engineering zu betreiben. Nachdem wir die gewünschte APK auf der Festplatte haben laden wir uns dex2jar unter http://code.google.com/p/dex2jar herunter. Mit diesem Tool wandeln wir den Dalvik Intermediate Code in eine JAR (sprich Java) Datei um. Wir wenden dex2jar mittels
dex2jar.sh test.apk
auf unsere APK an. Heraus kommt eine JAR Datei welche wir mit der JD-GUI (zu finden unter http://java.decompiler.free.fr/?q=jdgui) öffnen und uns so anschauen können.
Weitere Informationen gibt es unter:
http://stackoverflow.com/questions/3122635/android-decompile-apk
http://stackoverflow.com/questions/1249973/decompiling-dex-into-java-sourcecode
Also das ist mal ein sehr hilfreicher Artikel, danke!
Bisher kannte ich nur die apktool methode.
Ist ein bisschen umständlich formuliert
Die Dekompilate waren fehlerhaft und ergaben teils unsinnigen Code.
Die verwendeten xml dateien waren komplett unlesbar geworden.
Ich rate von dem Tool ab.
Man sollte nicht erwarten das etwas komplett sinnvolles heraus kommt. Mir ist auch schon aufgefallen, das das Tool manchmal Murks aus dem „Binärcode“ baut. Die Dinge welche ich herausfinden wollte, hatte es aber korrekt disassemblisiert. Man muss sich halt anschauen in wie weit es für jemanden sinnvoll ist. Das hängt denke ich von Fall zu Fall ab.
Warum funktioniert das ganze nicht mit den Apk’s von Huawei Ascend Mate 7? Deodexen kann man diese auch nicht.
Gruß Hen Ry