Indholdsfortegnelse:
Clark skriver,
Hvad pokker betyder egentlig odex og deodex? Jeg ser de vilkår, der er nævnt i næsten hver brugerdefineret ROM-tråd, og kan ikke finde et svar, som jeg kan forstå. Jeg håber, at Android Central kan hjælpe.
Fantastisk spørgsmål, Clark. Og en, jeg tror, vi kan svare på termer, som de fleste vil forstå. Som du har bemærket, ser du udtrykkene odex og deodexed i mange forums indlæg om brugerdefinerede rom'er eller forskellige hacks til telefoner og tablets begge dele. Det kræver en masse arbejde for udviklere at oprette deodexede ROM'er fra "lager" ROM'er, ligesom dem, der tilbydes fra både OEM'er og Google.
For at begynde skal vi vide, hvad en odex-fil er. Det er en del af et program (.apk-filen), der er forudbygget for at få Dalvik Virtual Machine til at indlæse den hurtigere med mindre ressourcer. Hvis du ser i / system / app / -mappen på din Android-telefon eller -tablet, vil du se, at næsten hver applikation har både en.apk-fil og en.odex-fil. Disse filer fungerer sammen gennem Dalvik VM for at få apps til at køre som de skal på vores enheder. Lad os nedbryde det hele efter pausen.
Dalvik VM
Dalvik VM er en stor del af et Android-system. Det er den komponent, der tillader tredjepartsapplikationer, der er skrevet i Java, at køre på din telefon eller tablet. Selve systemet starter DVM'en op, og når du trykker på for at starte en app, går den til at fungere. Det tager dataene inde i.apk-filerne og ved hjælp af en Just-in-time (JIT) kompilator, det bygger oplysningerne ind i et program og kører dem derefter. At have dele af koden, der allerede er optimeret og indbygget i en fil, som DVM kan køre, gør processen hurtigere og bruger mindre ressourcer. Det er hvad en odex-fil er.
Odex-filer
De odex-filer, du ser i din systemmappe, er bygget af de mennesker, der har skrevet og bygget selve applikationen. Android-apps skrives i Java og konverteres derefter til bytecode. Derefter konverteres de fra standard Java Virtual Machine-kompatible.klassefiler til en speciel filtype, som Dalvik VM kan læse. Disse kaldes.dex-filer. Når disse.dex-filer er placeret uden for resten af koden (som findes i.apk-filen), bliver du tilbage med en stand alone.odex-fil.
Der er masser af gode grunde til at have fristående.odex-filer. De gør hurtigere starttider (især den første boot) ved at bygge Dalvik-cache, når systemet er startet. De sparer også lidt plads ved at pege på Android-rammen, når det er muligt, og tillader, at applikationsudvikleren optimerer sine programmer. Men at have seperate.odex-filer er ikke meget hackervenligt.
Deodexing
Deodexing-filer betyder at tage stand alone.odex-filen og.apk-filen og genopbygge dem, så alle disse forudbyggede applikationsoplysninger er indeholdt i.apk-filen i stedet for sin egen fil. De forudbyggede data til Dalvik VM findes nu i en klasser.dex-fil inde i.apk-filen, som på billedet ovenfor. Det gør.apk-filerne lidt større, og de kan ikke indlæses på forhånd, når systemet fyres op. Men de kan være omvendt konstrueret af hackere og themere.
Med al kode og data til programmet ét sted, kan du bruge værktøjer til at "opbygge" appen og redigere den, du vil. Sådan laves temaer og justeringer som batteriprocentmods til "lager"-ROM'er. Når en udvikler har foretaget sine ændringer, genopbygger de derefter.apk-filen, og ændringerne kan køre. Dette påvirker ikke nogen anden del af systemet, fordi ingen af koden eller dataene deles med andre apps.
Hvilket skal du vælge?
Det er virkelig op til dig, og hvad dine behov vil være, men jeg foreslår at blinke en deodex-version når det er muligt. Ja, odex ROM'er starter hurtigere, men du bemærker det virkelig kun på den allerførste start, når alle systemapps er forudcachen af Dalvik VM. Du kan også spare en god plads ved at bruge odex-filer, men denne plads er alt sammen i systempartitionen og giver dig ikke plads til flere apps, hvis din telefon eller tablet bruger en separat applikationspartition. Med dagens moderne telefoner og deres multikerneprocessorer og enorme RAM-banker, vil du ikke engang bemærke nogen hurtigere indlæsningstid for applikationer.
Hvis du vil gøre ting som at ændre statuslinjen eller tema TouchWiz eller Sense, har du brug for en deodex ROM. Du har også brug for en deodex-ROM til at udføre nogle af de virkelig cool dybe systemtilpasninger som at ændre indstillingsmenuen eller redigere til rammerne. Kort sagt, hvis du allerede har låst din bootloader op og rodet, og du er klar til en brugerdefineret rom, er det sandsynligvis det bedste valg at vælge en deodexed version. Du vil blive forbløffet over de ting, som disse skøre udviklere kan komme med, og du vil helt sikkert støde på nogle få, du selv vil prøve.