Dacă sunteți un fan hardcore Android, șansele sunteste puternic că vei încerca cu nerăbdare noi teme, ROM-uri personalizate și toate aceste mod-uri pentru dispozitivul tău. Unul dintre punctele principale de confuzie este terminologia asociată cu aceste mod-uri - ceva destul de familiar dezvoltatorilor, dar nu pentru utilizatorii începători. Două dintre cuvintele care apar cel mai frecvent în ROM-urile și temele personalizate sunt „deodate” și „zipalign”. Câteva zile în urmă, am acoperit „deodat” în detaliu. În acest articol, vom explora ce înseamnă zipalign și modul în care APK-urile pot fi aliniate.

CE ESTE ZIPALIGNUL?
zipalign este un instrument de aliniere de arhivă introdusprima dată cu 1.6 Android SDK (kit de dezvoltare software). Acesta optimizează modul în care este ambalat un pachet de aplicații Android (APK). Acest lucru permite sistemului de operare Android să interacționeze cu aplicația mai eficient și, prin urmare, are potențialul de a face aplicația și, în general, întregul sistem mult mai rapid. Timpul de execuție este minimizat pentru aplicațiile zipalignate, rezultând o cantitate mai mică de consum de RAM la rularea APK.
Deci, cum funcționează exact?
Într-un mediu de operare Android, fișiere de datestocate în fiecare pachet de aplicații sunt accesate de mai multe procese, de exemplu, instalatorul va citi manifestul de date pentru a determina permisiunile asociate; serverul de sistem poate citi aceste resurse din mai multe motive, cum ar fi afișarea notificărilor; aplicația Acasă, de exemplu, va citi resurse pentru a obține numele și pictograma aplicației. Deoarece Android se bazează pe o adevărată infrastructură de operare multi-tasking, aceste fișiere sunt accesate continuu și în mod repetat. În cele din urmă, dar nu în ultimul rând, aplicația în sine citește datele manifeste.
Deoarece Android este bazat pe Linux, maparea memoriei joacă unrolul cheie în gestionarea eficientă a proceselor. În esență, alinierea optimă pentru codul de gestionare a resurselor sistemului de operare Android este de 4 octeți. Ceea ce înseamnă asta este că, dacă APK-urile sunt mapate în memorie la limitele de 4 biți și aliniate în consecință, sistemul de operare nu va trebui să „citească” întregul pachet de aplicații pentru a ajunge la manifestul de date dorit. Fiecare proces de sistem va ști în avans unde să caute resursele dorite și, prin urmare, va executa mult mai ușor și mai rapid.
Rezumând, zipalignizarea unui APK are ca rezultat toatedatele necomprimate din pachet să fie aliniate pe limitele de 4 biți, permițând accesarea directă a tuturor porțiunilor cu harta memoriei. Consumul de RAM este redus în timpul executării, deoarece codul de interogare nu trebuie să citească întregul pachet de aplicații.
DEZVANTAJELE APK-urilor NEMALIZATE
Destul de înțeles, situația ar fi rezervatăpentru pachete de aplicații nealiniate. Citirea resurselor ar fi lentă și utilizarea memoriei ar fi la capătul superior al spectrului. De asemenea, ar depinde de câte aplicații nealiniate sunt prezente. De exemplu, dacă un număr mai mic de aplicații cu o aplicație de origine nealignată, veți vedea timpi mai mici de lansare a aplicațiilor. Acesta este cel mai bun caz de caz. Pentru cel mai rău caz, faptul că un număr de aplicații nealiniate va duce la începerea și uciderea repetată a proceselor, luptând cu întârzieri și o scurgere uriașă a bateriei.
CUM O FACE, DE CE?
După cum am menționat anterior, instrumentul zipalign a devenit o parte a SDK-ului Android începând cu 1.6. Poate fi găsit în folderul „instrumente” al SDK. Pentru a o utiliza, pur și simplu executați comanda:
zipalign [-f] [-v] <alignment> infile.apk outfile.apk
Unde infile.apk este fișierul sursă și outfile.apk este fișierul de ieșire.
În plus, puteți verifica alinierea unui fișier APK folosind următoarea comandă:
zipalign -c -v <alignment> existing.apk
Unde existing.apk poate fi orice pachet de aplicații de care aveți nevoie pentru a fi verificat. De asemenea <Aliniere> etichetarea ambelor comenzi trebuie să fie o componentă integralăvaloare (altfel comanda va reveni nevalidă). Această valoare, deși poate fi orice număr întreg, TREBUIE să fie întotdeauna 4, ceea ce ar asigura alinierea pe 32 de biți. Orice altă valoare și în mod efectiv nu va face nimic.
În cele din urmă, pentru steagurile utilizate în aceste comenzi,
- -f : suprascrie outfile.zip existente
- -v : va da o ieșire verbală
- -c : va confirma alinierea unui fișier dat
CUVINTE DE ATENȚIE: operația zipalign trebuie efectuată numai după ați semnat fișierul APK cu dvs. privatcheie. Dacă sunt aliniați înainte de semnare, procedura de semnare va perturba alinierea. Același lucru este valabil pentru orice altă modificare, adăugare sau eliminare a fișierului APK. Orice modificare după rularea zipalign va anula alinierea.
Disclaimer: Acest ghid este destinat doar în scopuri educaționale. Acesta nu este în niciun caz un înlocuitor al setului de instrumente pentru dezvoltatori Android și nici destinat să fie utilizat în scopuri de dezvoltare. AddictiveTips nu oferă niciun suport legat de materialul prezentat aici.
Comentarii