Ako nováčik v systéme Android ma najviac trápilostretávajú sa s terminológiou nad mojím porozumením. Keďže nepochádzajú z prostredia Linuxu, bolo ťažké udržať krok s tak často používanými slovami šírenými po celej vývojovej komunite. Podobne, keďže som nerozumel týmto podmienkam, nemohol som teda určiť, či mi niečo bolo alebo nebolo užitočné. Z toho, čo som videl, sa tento problém týka mnohých nováčikov a dokonca aj priemerných používateľov.
Jedno bežne sa vyskytujúce slovo pri hranívlastné ROM a firmvér a dokonca aj témy sú deodexované a odexované. Väčšina používateľov nechápe, čo tieto pojmy vlastne znamenajú, a zatiaľ čo vývojári sa môžu chváliť, že ich témy a ROM sú deodexované, priemerný používateľ je bezradný, čo sa deje.

V tomto článku sa pokúsime vysvetliť, čo znamená odexed a deodexed a aké dôsledky to prináša pre bežného používateľa.
ČO JE SÚBOR ODEX?
V súborovom systéme Android prichádzajú aplikáciebalíčky s príponou .apk. Tieto aplikačné balíčky alebo súbory APK obsahujú určité súbory .odex, ktorých predpokladanou funkciou je ušetriť miesto. Tieto súbory „odex“ sú vlastne zbierky častí aplikácie, ktoré sú optimalizované pred zavedením systému. Ak tak urobíte, urýchli sa proces zavádzania, pretože vopred načíta časť aplikácie. Na druhej strane to tiež sťažuje hackovanie týchto aplikácií, pretože časť kódovania už bola pred vykonaním extrahovaná na iné miesto.
Potom prichádza DEODEX
Deodexing v podstate tieto balíčky APK prebaľuje určitým spôsobom tak, aby sa znova zostavili classes.dex Súbory. Týmto spôsobom sú všetky kusy aplikačného balíka zostavené späť na jednom mieste, čím sa eliminuje obavy z konfliktu modifikovaného súboru APK s niektorými samostatnými odexponovanými časťami.
Stručne povedané, deodexované ROM (alebo APK) majú všetkyich aplikačné balíčky sú zostavené späť na jednom mieste, čo umožňuje ľahkú modifikáciu, napríklad tematické. Pretože z akéhokoľvek externého miesta neprichádza žiadny kód, vlastné ROM alebo APK sa vždy deodexujú, aby sa zabezpečila integrita.
AKO TO PRÁCE
Pre viac podivíncov medzi nami používa operačný systém Android na spúšťanie aplikácií virtuálny stroj založený na Java, ktorý sa nazýva Dalvik Virtual Machine. Deodexed alebo .dex súbor obsahuje vyrovnávaciu pamäť používanú týmto virtuálnym strojom (označovanú ako Dalvik-cache) pre program a je uložený v APK. .odex súbor, na druhej strane, je jeho optimalizovanou verziou .dex súbor, ktorý je uložený Ďalšie APK na rozdiel od jeho vnútra. Android používa túto techniku v predvolenom nastavení na všetky systémové aplikácie.
Teraz, keď zavádza systém založený na systéme Android, sa pomocou nich vytvorí vyrovnávacia pamäť davlik pre Davlik VM .odex súbory, čo umožňuje OS naučiť sa vopred, ktoré aplikácie sa načítajú, a tým sa zrýchli proces zavádzania.
Deodexovaním týchto súborov APK vývojár skutočne umiestni súbor .odex súbory späť do ich príslušných balíkov APK. Pretože všetok kód je teraz obsiahnutý v samotnom APK, je možné modifikovať akýkoľvek balík aplikácií bez toho, aby to bolo v rozpore s operačným prostredím operačného systému.
VÝHODY NEVÝHODY
Výhodou deodexingu je modifikáciamožností. Toto sa najčastejšie používa vo vlastných ROM a témach. Vývojár vytvárajúci vlastnú ROM by sa takmer vždy rozhodol najskôr deodexovať balík ROM, pretože by mu to nielenže umožnilo modifikovať rôzne súbory APK, ale nechal by tiež priestor pre následné inštalácie.
Na druhej strane, od .odex súbory mali rýchlo vytvoriť dalvikvyrovnávacia pamäť, ich odstránenie by znamenalo dlhšie počiatočné spúšťacie časy. Platí to však iba pre prvé spustenie systému po deodexingu, pretože vyrovnávacia pamäť by sa po použití aplikácií stále stavala. Dlhšie bootovacie časy sa môžu znova zobraziť, iba ak je dalvik cache vymazaná z nejakého dôvodu.
Pre príležitostného používateľa je hlavným dôsledkom tematické možnosti. Témy pre Android sa dodávajú aj v súboroch APK a ak chcete niektoré z nich upraviť, mali by ste si vždy zvoliť vlastnú dedikovanú ROM.
Bol tento článok nápomocný? Ak ste zmätení s niektorými inými pojmami a chcete, aby sme ich vysvetlili, dajte nám vedieť v komentároch.
Komentáre