Hvad er Zipalign i Android, og hvordan man laver apps Zipaligned

click fraud protection

Hvis du er en hardcore Android-fan, er chancerne store for, at du ivrigt vil prøve nye temaer, brugerdefinerede rom'er og alle sådanne tilstande til din enhed. Et af de vigtigste forvirringspunkter er terminologien, der er forbundet med disse mods - noget, som udviklerne er ganske velkendte, men ikke for meget for de nybegynder. To af de mest almindeligt forekommende ord i brugerdefinerede rom'er og temaer er 'deodexed' og 'zipalign'. Et par dage tilbage, vi dækket 'Deodexed' i detaljer. I denne artikel undersøger vi hvad zipalign betyder og hvordan APK'er kan linjeformes.

HVAD ER ZIPALIGN?

zipalign er et arkivjusteringsværktøj introduceret første gang med 1.6 Android SDK (softwareudviklingssæt). Det optimerer måden, hvor en Android-applikationspakke (APK) er pakket. Dette gør det muligt for Android-operativsystemet at interagere med applikationen mere effektivt, og har derfor potentialet til at gøre applikationen og samlet set hele systemet meget hurtigere. Udførelsestid minimeres for zip-justerede applikationer, hvilket resulterer i mindre mængde RAM-forbrug, når du kører APK.

instagram viewer

SÅ HVORDAN ARBEJDER DET PRÆCIST?

I et Android-driftsmiljø får du adgang til datafiler, der er gemt i hver applikationspakke flere processer, for eksempel vil installationsprogrammet læse data manifestet for at bestemme det tilknyttede tilladelser; systemserveren kan læse disse ressourcer af flere årsager, såsom visning af underretninger; Home-applikationen læser for eksempel ressourcer til at få applikationens navn og ikon. Da Android er baseret på en ægte driftsinfrastruktur med flere opgaver, fås disse filer kontinuerligt og gentagne gange. Endelig, men ikke mindst, læser selve applikationen de manifeste data.

Da Android er Linux-baseret, spiller hukommelseskortlægning en nøglerolle i effektiv håndtering af processer. I det væsentlige er den optimale justering til Android OS 'ressourcehåndteringskode 4-byte grænser. Hvad dette betyder er, at hvis APK'er er hukommelseskortet til 4-byte grænser og justeres i overensstemmelse hermed, OS behøver ikke at "læse" hele applikationspakken for at komme til de ønskede data manifest. Hver systemproces ved på forhånd, hvor man skal se efter de ønskede ressourcer, og vil derfor udføre meget glattere og hurtigere.

Opsummering af det, ziplinjering af en APK resulterer i, at alle ukomprimerede data i pakken justeres på 4-byte-grænser, så alle dele kan fås direkte adgang med hukommelseskortet. RAM-forbrug sænkes under udførelsen, fordi forespørgselskoden ikke behøver at læse igennem hele applikationspakken.

ULEDNING AF UALIGNEREDE APK'er

Ret forståeligt nok vil situationen være forbeholdt ikke-justerede applikationspakker. Ressourcelæsning ville være langsom, og hukommelsesforbruget ville være i den højere ende af spektret. Det afhænger også af hvor mange applikationer, der ikke er tilsluttet. For eksempel, hvis færre antal applikationer med en ikke-tilpasset hjemmeapplikation, ser du langsommere applikationstider. Dette er det bedste tilfælde. I værste fald vil det at have en række ujævnede applikationer resultere i, at systemet gentagne gange starter og dræber processer, kæmper med forsinkelser og enormt batteriafløb.

HVORDAN GØR DU DET?

Som nævnt tidligere blev zipalign-værktøjet en del af Android SDK fra 1.6 og fremefter. Det kan findes under “værktøjer” -mappen i SDK. For at bruge det skal du blot køre kommandoen:

zipalign [-f] [-v]  infile.apk outfile.apk

hvor infile.apk er kildefilen, og outfile.apk er output-filen.

Desuden kan du også verificere justeringen af ​​en APK-fil ved hjælp af følgende kommando:

zipalign -c -v  existing.apk

hvor existing.apk kan være en hvilken som helst applikationspakke, som du har brug for for at blive verificeret. Også tag i begge kommandoer skal være en integreret værdi (ellers returnerer kommandoen ugyldig). Selv om denne værdi kan være et hvilket som helst heltal, SKAL det altid være 4, hvilket ville give 32-bit justering. Enhver anden værdi, og den vil faktisk ikke gøre noget.

Endelig for de flag, der bruges i disse kommandoer,

  • -f: overskriver eksisterende outfile.zip
  • -v: giver ordret output
  • -c: vil bekræfte justeringen af ​​en given fil

FORSIGTIGHEDSORD: zipalign-operation må kun udføres efter du har underskrevet APK-filen med din private nøgle. Hvis ziplinjeret før signering, vil underskrivelsesproceduren forstyrre justeringen. Det samme gælder for enhver anden ændring, tilføjelse eller fjernelse til APK-filen. Enhver ændring efter kørsel af zipalign fortryder justeringen.

Disclaimer: Denne vejledning er kun beregnet til uddannelsesmæssige formål. Dette er på ingen måde en erstatning for Android-udviklerværktøjskassen, og den er heller ikke beregnet til at blive brugt til udviklingsformål. AddictiveTips yder ingen support i relation til det heri præsenterede materiale.

watch instagram story