- - Hva er Odex og Deodex i Android [Komplett guide]

Hva er Odex og Deodex i Android [Komplett guide]

Som en Android-nybegynner, det som plaget meg mestkommer over terminologi utenfor min forståelse. Ikke fra Linux bakgrunn, det ble vanskelig å følge med på de så ofte brukte ordene spredt over hele utviklingssamfunnet. På samme måte, siden jeg ikke forsto begrepene, kunne jeg følgelig ikke bestemme at noe var til noen nytte for meg eller ikke. Fra hva jeg har sett, strekker dette problemet seg til mange nybegynnere og til og med gjennomsnittlige brukere.

Et ofte forekommende ord når du spiller medtilpassede ROM-er og firmware, og til og med temaer er deodexed og odexed. De fleste brukere klarer ikke å forstå hva disse begrepene faktisk innebærer, og selv om utviklere vil skryte gang på gang om at temaene og ROM-ene deres blir deodexed, blir den gjennomsnittlige brukeren ikke klar over hva som skjer.

I denne artikkelen skal vi prøve å forklare hva odexed og deodexed betyr, og hvilke implikasjoner det gir en tilfeldig bruker.

HVA ER EN ODEXFIL?

I Android-filsystem kommer applikasjoner innpakker med utvidelsen .apk. Disse applikasjonspakkene, eller APK-er, inneholder visse .odex-filer hvis antatte funksjon er å spare plass. Disse ‘odex’-filene er faktisk samlinger av deler av et program som er optimalisert før oppstart. Hvis du gjør det, får du raskere startprosessen, ettersom den forhåndslaster deler av en applikasjon. På den annen side gjør det også vanskelig å hacking av disse applikasjonene fordi en del av kodingen allerede er trukket ut til et annet sted før utførelse.

KOMMER DEODEX

Deodexing pakker i utgangspunktet disse APK-ene på en viss måte, slik at de settes sammen til classes.dex filer. Ved å gjøre det, blir alle delene av en applikasjonspakke satt sammen på ett sted, og dermed eliminert bekymringen for en modifisert APK som kommer i konflikt med noen separate odexed-deler.

Oppsummert har Deodexed ROM-er (eller APK-er) alleapplikasjonspakkene deres satt sammen på ett sted, noe som gir enkel endring, for eksempel tema. Siden ingen koder kommer fra noe eksternt sted, blir de tilpassede ROM-er eller APK-er alltid deodeksert for å sikre integritet.

HVORDAN DETTE FUNGERER

For de mer nerdete blant oss bruker Android OS en Java-basert virtuell maskin for å kjøre applikasjoner, kalt Dalvik Virtual Machine. En deodeksert, eller .dex filen inneholder hurtigbufferen som brukes av denne virtuelle maskinen (referert til som Dalvik-cache) for et program, og den er lagret i APK. en .odex fil, derimot, er en optimalisert versjon av denne .dex fil som er lagret neste til APK i motsetning til inni den. Android bruker denne teknikken som standard på alle systemapplikasjonene.

Når et Android-basert system starter opp, er davlik-cachen for Davlik VM bygget ved hjelp av disse .odex filer, slik at operativsystemet kan lære på forhånd hvilke applikasjoner som vil lastes, og dermed fremskynder oppstartsprosessen.

Ved å avkode disse APK-ene, setter en utvikler faktisk .odex filer tilbake i sine respektive APK-pakker. Siden all kode nå er inne i selve APK, blir det mulig å endre hvilken som helst applikasjonspakke uten å komme i konflikt med operativsystemets utførelsesmiljø.

FORDELER ULEMPER

Fordelen med deodexing er i modifiseringmuligheter. Dette brukes mest i tilpassede ROM-er og temaer. En utvikler som bygger en tilpasset ROM, vil nesten alltid velge å avkode ROM-pakken først, siden det ikke bare vil tillate ham å endre forskjellige APK-er, men også gi rom for etterinstallering.

På den annen side, siden .odex filene skulle raskt bygge dalvikcache. Hvis du fjerner dem, vil det bety lengre starttid for start. Dette gjelder imidlertid bare for den første oppstarten noensinne etter deodexing, siden cachen fortsatt vil bli bygd over tid når applikasjoner brukes. Lengre starttid kan bare sees igjen hvis dalvik-cachen av en eller annen grunn tørkes ut.

For en tilfeldig bruker er hovedimplikasjonen temaemuligheter. Temaer for android kommer i APK-er også, og hvis du vil endre noen av disse, bør du alltid velge en dedoxed tilpasset ROM.

Var denne artikkelen til hjelp? Hvis du er forvirret med noen andre vilkår og ønsker at vi skal hjelpe oss med å forklare dem, vennligst gi oss beskjed i kommentarene.

kommentarer