.DEX

DEX-fil

Dalvik Executable
Stil et spørgsmål
HURTIGT SVAR

En DEX-fil er kompileret Android-app-kode - den Dalvik Executable, som Androids runtime (ART) kører. Den findes normalt inde i en APK som classes.dex, ikke som en selvstændig fil. For at læse koden skal du bruge jadx (gratis) til at dekompilere den til Java. Du kan ikke køre en .dex på Windows eller konvertere den til en EXE.

Udvikler: Google (Android Open Source Project) Kategori: Udviklerfiler Åben standard MIME: application/octet-stream
ÅBNER PÅ Windows macOS Linux Android
Relateret: .DO · .MD · .HEX · .XSD

På denne side

19k+ filtyper indekseret
Sidst gennemset Sep 9, 2026

Er du ikke sikker på, hvad din fil er?

Træk en fil over i vores identifikator - vi læser kun de første bytes for at navngive formatet.

Identificer en fil

Hvad er DEX-filformatet?

En .dex-fil er en Dalvik Executable - en kompileret bytecode-container designet til at køre i Android-systemmiljøet. Den indeholder kompileret kode, der er klar til at blive eksekveret på Android, og blev oprindeligt fortolket af den virtuelle Dalvik-maskine. Siden Android 5.0 (Lollipop) har den moderne ART (Android Runtime) kompileret .dex-bytecode «ahead-of-time» i stedet for at fortolke den, men formatet forbliver standardformatet for eksekverbare filer på Android.

DEX-filer i APK-pakker

.dex-filer findes almindeligvis inde i APK-pakker, som bruges til at installere ny software på Android. Historisk set indeholdt hver APK en enkelt classes.dex-fil, der gemte alle klasser og metoder, som applikationen brugte. Større apps bruger nu «multidex» - hvor koden opdeles i classes.dex, classes2.dex, classes3.dex og så videre - for at overskride grænsen på 65.536 metoder, som en enkelt fil pålægger.

Generering og inspektion af DEX-filer

En .dex-fil kan genereres automatisk som en del af Android-build-processen eller manuelt. Den moderne værktøjskæde bruger d8-compileren (en del af Android SDK build-tools) til at oversætte Java- eller Kotlin-bytecode til .dex-format. Hver fil starter med den magiske signatur dex\n efterfulgt af et 3-cifret formatversionsnummer (såsom 035, 037, 038 eller 039) og en null-byte. Under installationen kompilerer ART yderligere .dex til maskinkode, hvilket producerer .odex- eller .vdex-filer, der gemmes på enheden.

Sikkerhed og tryghed

RISIKO: MEDIUM

En .dex i sig selv kører ikke på din PC, så det er lavrisiko blot at have en liggende. Den reelle kontekst er analyse af Android-malware: ondsindede apps skjuler deres logik i DEX (nogle gange indlæst dynamisk under kørsel), så en .dex, du har udtrukket fra en upålidelig APK, kan indeholde skadelig kode. Inspicer kun sådanne filer i et sikkert miljø (decompiler/sandbox), aldrig ved at installere den overordnede APK. Vær påpasselig med tvivlsomme «dex to exe / dex opener» download-sider - de gør intet legitimt og indeholder ofte adware.

Formatdetaljer

kort fortalt
FULDSTÆNDIGT NAVNDalvik Executable
UDVIKLERGoogle (Android Open Source Project)siden 2008 (Android 1.0; Dalvik VM, executed by ART since Android 5.0)
MIME-TYPEapplication/octet-stream
TYPEKompileret Android bytecode-container (binær eksekverbar fil til Dalvik/ART runtime)
STANDARDÅben · royaltyfri
MAGIC BYTES · FILSIGNATUR
OFFSET
0001020304050607
HEX
6465780A30333500
ASCII
dex·035·
Magic er «dex\n» efterfulgt af en 3-cifret DEX-formatversion og en 0-byte; versionscifrene ændres med Android-udgivelser.

Programmer der åbner DEX-filer

Windows4 apps
jadx Open-source Åbn .dex (eller hele .apk-filen) i jadx-gui for at dekompilere den til læsbar Java og gennemse koden. Det foretrukne gratis værktøj i 2026.
Android SDK build-tools (d8 / dexdump) Gratis Brug «dexdump classes.dex» til at dumpe headere/bytecode, eller d8/r8 i build-pipelinen. Det officielle Google-værktøj (SDK'et erstatter den gamle selvstændige «Android SDK»-download).
Android Studio Gratis Træk en APK/dex ind i Android Studios APK Analyzer for at inspicere DEX-metodeantal og klasseindhold.
JEB / Ghidra (advanced RE) Open-source Ghidra (gratis) kan indlæse DEX til dybere reverse engineering; JEB er en kommerciel Android-decompiler. For analytikere, ikke almindelige brugere.
macOS2 apps
jadx Open-source Åbn .dex (eller hele .apk-filen) i jadx-gui for at dekompilere den til læsbar Java og gennemse koden. Det foretrukne gratis værktøj i 2026.
Android SDK build-tools (d8 / dexdump) Gratis Brug «dexdump classes.dex» til at dumpe headere/bytecode, eller d8/r8 i build-pipelinen. Det officielle Google-værktøj (SDK'et erstatter den gamle selvstændige «Android SDK»-download).
Linux3 apps
jadx Open-source Åbn .dex (eller hele .apk-filen) i jadx-gui for at dekompilere den til læsbar Java og gennemse koden. Det foretrukne gratis værktøj i 2026.
baksmali / smali Open-source baksmali disassemblerer en .dex til menneskeligt læsbar Smali; smali samler den igen - standarden for redigering af Android-bytecode.
Android SDK build-tools (dexdump) Gratis dexdump til inspektion på lavt niveau.
Android1 app
The Android runtime (ART) Indbygget ART eksekverer DEX-bytecode på enheden - men kun som en del af en installeret APK, ikke en løs .dex du «åbner».

Tekniske detaljer

dyb specifikation
VM-arkitekturRegister-baseret (i modsætning til den stak-baserede JVM; hver DEX-instruktion navngiver eksplicit register-operander, hvilket reducerer det samlede antal instruktioner)
Magic bytes8 bytes ved fil-offset 0: ASCII «dex», linjeskift (0x0A), 3-cifret formatversion (f.eks. 035, 037, 038, 039), null-byte (0x00)
Formatversioner035 (Android 2.2), 037 (Android 7.0), 038 (Android 8.0), 039 (Android 9+); versionscifre er indlejret i den magiske header
Grænse for metodeindeks65.536 metoder pr. .dex-fil (16-bit metodereferenceindeks); apps, der overskrider dette, opdeler koden i classes2.dex, classes3.dex osv.
IntegritetsfelterHeaderen indeholder en Adler-32-tjeksum og en 20-byte SHA-1-signatur, der tilsammen dækker resten af filen
String poolAlle streng-literaler gemmes én gang i en delt, deduplikeret streng-pool; bytecode refererer til strenge via heltalsindeks
Byte-ordenLittle-endian som standard; headeren indlejrer endianness-konstanten 0x12345678 for at muliggøre detektering af omvendt byte-orden
KildesprogJava og Kotlin (og ethvert sprog målrettet JVM); d8-compileren konverterer .class-bytecode eller .jar-arkiver til DEX
Build-time compilerd8 (Android SDK build-tools 28.0.1+) erstattede det forældede dx-værktøj; tager JVM .class-filer eller .jar-arkiver som input
ART ahead-of-time kompilationVed installationstidspunktet konverterer ART's dex2oat .dex til maskinkode og gemmer resultaterne som .odex / .oat-filer i /data/dalvik-cache
MIME-typeapplication/octet-stream (der findes ingen dedikeret registreret MIME-type for DEX-formatet)
EksekveringshistorikFortolket af Dalvik VM med JIT (Android 1.0-4.4); ahead-of-time + profil-guidet JIT kompileret af ART (Android 5.0+)
Disassemblering og dekompileringbaksmali disassemblerer .dex til Smali-assembly; jadx og lignende værktøjer dekompilerer .dex tilbage til læsbar Java-kildekode
Placering inde i APKGemt ukomprimeret inde i APK ZIP-arkivet; den primære indgang hedder altid classes.dex, med classes2.dex og fremad for multidex-apps
Udgivet2008 (Android 1.0; Dalvik VM, executed by ART since Android 5.0)
Åben standardJa · royaltyfri
Specifikationsource.android.com

DEX-konverteringer

Fællesskabets Q&A

spurgt af brugere
Stil et hurtigt spørgsmål
Få hjælp fra folk, der arbejder med DEX-filer. Vær specifik - medtag dit system og din softwareversion.
Ingen konto nødvendig · svar normalt inden for en dag

Ingen spørgsmål endnu - vær den første til at spørge om DEX-filer.

Ofte stillede spørgsmål

Hvad er en classes.dex-fil inde i en APK?
Det er appens kompilerede kode (Dalvik Executable), som Androids runtime kører. Store apps opdeler den i classes.dex, classes2.dex osv. (multidex). Det er appens faktiske programlogik.
Hvordan åbner eller læser jeg en .dex-fil?
Brug jadx (gratis) til at dekompilere den til læsbar Java, eller baksmali til at disassemblere den til Smali. Android SDK's dexdump dumper tekniske detaljer. Du læser DEX, du «kører» den ikke på en PC.
Kan jeg konvertere en DEX-fil til EXE?
Nej. DEX er Android/ART-bytecode; EXE er Windows-maskinkode. Der findes ingen konverter. For at køre koden skal du bruge Android - en telefon eller en emulator på din PC.
Hvordan får jeg Java-kildekode fra en .dex?
Dekompiler den med jadx, eller konverter den til en .jar med dex2jar og åbn den i en Java-decompiler. Resultatet er tilnærmet, læsbar Java - ikke udviklerens nøjagtige originale kildekode.
Hvad er forskellen på DEX og APK?
DEX er kun den kompilerede kode; en APK er den fulde installationspakke, der indeholder DEX (som classes.dex) plus manifest, ressourcer, native biblioteker og en signatur. Du installerer APK'en, ikke DEX-filen.
Kan jeg køre en .dex-fil direkte?
Kun inde i Android (ART), og normalt kun som en del af en installeret APK. Der er ingen selvstændig måde at dobbeltklikke og køre en .dex på Windows, macOS eller Linux.

Referencer

1Android - Dalvik Executable format (AOSP)source.android.com
2Android - ART and Dalvik runtimesource.android.com

Udforsk mere

på tværs af databasen

Populære filtyper i denne uge

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.DATProgram Data File (generic)
4.RPMSGRestricted Permission Message
5.PARTPartial Download File
6.EXEWindows Executable (Portable Executable)
7.JPGJPEG Image
8.ICSiCalendar data file
9.JSONJavaScript Object Notation file
10.BINCD/DVD Disc Image (BIN/CUE)

Relaterede filtyper

.DOStata Do-File
.MDMarkdown Document
.HEXIntel HEX File
.XSDXML Schema Definition
.MAPSource Map (JavaScript / CSS)
.CONFIGConfiguration File

Gratis filværktøjer

En fil-identifikator og billedkonverter direkte i browseren - alt kører på din enhed.

Åbn værktøjskassen

Gennemse filtyper A-Å