Über die .dex-Datei:
Eine der bemerkenswertesten Eigenschaften des Dalvik Virtual Machine(Arbeitspferdes unter dem Android-System) ist, dass es keinen Java-Bytecode verwendet. Stattdessen wurde ein selbst entwickeltes Format namens DEX eingeführt, und nicht einmal die Bytecode-Anweisungen sind mit den Java-Bytecode-Anweisungen identisch.
Compiled Android application code file.
Android-Programme werden in .dex(Dalvik Executable) Dateien kompiliert , die wiederum in eine einzelne .apkDatei auf dem Gerät komprimiert werden. .dexDateien können erstellt werden, indem kompilierte Anwendungen, die in der Programmiersprache Java geschrieben sind, automatisch übersetzt werden.
Dex-Dateiformat:
1. File Header
2. String Table
3. Class List
4. Field Table
5. Method Table
6. Class Definition Table
7. Field List
8. Method List
9. Code Header
10. Local Variable List
Android hat Dokumentation zu den Dalvik Executable Format( .dex- Dateien). Weitere Informationen finden Sie in den offiziellen Dokumenten: Dex-Dateiformat
.dex Dateien ähneln Java-Klassendateien, wurden jedoch unter der Dalkvik Virtual Machine (DVM) in älteren Android-Versionen ausgeführt und bei der Installation auf dem Gerät zu nativem Code mit ART in neueren Android-Versionen kompiliert.
Sie können decompile.dex mit dem dexdumpTool, das in android-sdk bereitgestellt wird.
Es gibt auch einige Reverse Engineering-Techniken , um eine jar fileoder java class fileaus einer .dexDatei zu erstellen.