Što su Odex i Deodex u Androidu [Cijeli vodič]

click fraud protection

Kao Android novak, ono što me je najviše smetalo bilo je nanošenje terminologije izvan mog razumijevanja. Ne dolazeći iz Linux pozadine, postalo je teško pratiti oh-tako uobičajene riječi koje se šire po čitavoj razvojnoj zajednici. Isto tako, budući da nisam razumio izraze, prema tome nisam mogao utvrditi je li mi nešto od koristi ili ne. Iz onoga što sam vidio, ovaj se problem proširuje na mnoge početnike, pa čak i prosječne korisnike.

Jedna uobičajena riječ pri igranju s prilagođenim ROM-ima i firmwareom, pa čak i temama je deodexed i odexed. Većina korisnika ne razumije što ti pojmovi zapravo podrazumijevaju, a dok bi se programeri opet i hvalili O njihovim temama i ROM-ovima koji se deodeksiraju, prosječni korisnik je bez riječi o tome što se događa na.

U ovom ćemo članku pokušati objasniti što odexed i deodexed znači i koje implikacije ima za slučajnog korisnika.

ŠTO JE ODEX FILE?

U datotečnom sustavu Android aplikacije dolaze u paketima s nastavkom .apk. Ovi aplikacijski paketi ili APK-ovi sadrže određene .odex datoteke čija je pretpostavljena funkcija ušteda prostora. Ove 'odex' datoteke zapravo su zbirka dijelova aplikacije koji su optimizirani prije pokretanja. Na taj se način ubrzava postupak pokretanja, jer se prethodno učitava dio aplikacije. S druge strane, otežava i hakiranje tih aplikacija jer je dio kodiranja već izveden na drugo mjesto prije izvršenja.

instagram viewer

TAKO DOLAZI DEODEX

Deodexing u osnovi prepakira te APK-ove na određeni način, tako da se oni ponovno sastavljaju u classes.dex datoteka. Time se svi dijelovi aplikacijskog paketa ponovno sastavljaju na jednom mjestu, čime se eliminira briga o modificiranom APK-u koji je u sukobu s nekim odvojenim dijelovima.

Ukratko, deodeksirani ROM-ovi (ili APK-ovi) sve svoje aplikacijske pakete sastavljaju na jednom mjestu, omogućujući jednostavne izmjene, poput temaziranja. Budući da nijedan komad koda ne dolazi s bilo kojeg vanjskog mjesta, prilagođeni ROM-i ili APK-ovi uvijek su deodeksirani kako bi se osigurala integriteta.

KAKO TO RADI

Za još luđački među nama, Android OS koristi virtualni stroj temeljen na Javi za pokretanje aplikacija, nazvan Dalvik Virtual Machine. Deodeksirano, ili .dex datoteka sadrži predmemoriju koju ovaj virtualni stroj koristi (naziva Dalvik-cache) za program i ona je spremljena unutar APK-a. .odex datoteka, s druge strane, optimizirana je inačica istog .dex datoteka koja je pohranjena Sljedeći u APK, za razliku od unutar njega. Android ovu tehniku ​​zadano primjenjuje na sve sistemske aplikacije.

Sada, kada se sustav sa sustavom Android pokreće, davlik predmemorija za Davlik VM izgrađena je pomoću ovih .odex datoteke, omogućujući OS-u da unaprijed nauči koje će se aplikacije učitavati i na taj način ubrzati postupak dizanja sustava.

Deodeksiranjem ovih APK-ova programer zapravo postavlja " .odex datoteke unutar njihovih odgovarajućih APK paketa. Budući da je sav kôd sadržan u samom APK-u, postaje moguće izmijeniti bilo koji aplikacijski paket bez sukoba s izvršnim okruženjem operacijskog sustava.

PREDNOSTI MANE

Prednost deodeksinga je u mogućnostima modifikacije. To se najčešće koristi u prilagođenim ROM-ima i temama. Programer koji izrađuje prilagođeni ROM gotovo bi uvijek prvo izabrao deodeks ROM paketa, jer mu to neće samo omogućiti izmjenu različitih APK-ova, već će ostaviti i prostor za poslijeinstaliranje.

S druge strane, od .odex datoteke su trebale brzo sastaviti predmemoriju dalvik, a njihovo uklanjanje značilo bi duže početno vrijeme pokretanja. Međutim, to vrijedi samo za prvo ikad pokretanje nakon deodexinga jer će se predmemorija s vremenom i dalje graditi tijekom upotrebe aplikacija. Dulja vremena dizanja mogu se ponovno vidjeti samo ako se Dalvik cache iz nekog razloga obriše.

Za povremenog korisnika glavna je implikacija u tematskim mogućnostima. Teme za android dolaze i u APK-ima, a ako želite modificirati bilo koji od njih, uvijek biste trebali odabrati prilagođeni ROM s dedoexedom.

Je li ovaj članak bio koristan? Ako ste zbunjeni s nekim drugim izrazima i želite da vam pomognemo objasniti ih, javite nam u komentarima.

watch instagram story