Vad är Zipalign i Android och hur man gör appar Zipallined

click fraud protection

Om du är ett hardcore Android-fan är chansen stor att du ivrigt ska prova nya teman, anpassade ROM och alla sådana lägen för din enhet. En av de viktigaste förväxlingspunkterna är terminologin som är associerad med dessa mods - något som är ganska välkänt för utvecklarna, men inte så mycket för nybörjare. Två av de vanligaste orden i anpassade ROM och teman är "deodexed" och "zipalign". Några dagar tillbaka, vi täckt "Deodexed" i detalj. I den här artikeln kommer vi att utforska vad zipalign betyder och hur APK: er kan riktas zip.

VAD ÄR ZIPALIGN?

zipalign är ett arkiveringsinstrument som introducerades första gången med 1.6 Android SDK (programvaruutvecklingssats). Det optimerar hur ett Android-applikationspaket (APK) paketeras. Genom att göra det kan Android-operativsystemet interagera med applikationen mer effektivt och har därför potential att göra applikationen och totalt sett hela systemet mycket snabbare. Exekveringstiden minimeras för zip-anpassade applikationer, vilket resulterar i mindre mängd RAM-konsumtion när du kör APK.

instagram viewer

Så hur fungerar det exakt?

I en Android-operativmiljö åtkomst till datafiler som lagras i varje applikationspaket av flera processer, till exempel kommer installationsprogrammet att läsa data manifestet för att bestämma det tillhörande behörigheter; systemservern kan läsa dessa resurser av flera skäl, som att visa aviseringar; Hem-applikationen läser till exempel resurser för att få applikationens namn och ikon. Eftersom Android är baserat på en verklig driftsinfrastruktur med flera uppgifter, åtkomst till dessa filer kontinuerligt och upprepade gånger. Slutligen, men inte minst, läser själva applikationen manifestdata.

Eftersom Android är Linux-baserat spelar minneskartläggning en nyckelroll i effektiv hantering av processer. I huvudsak är den optimala anpassningen för Android OS: s resurshanteringskod 4-byte gränser. Vad detta betyder är att om APK: er är mappkartade till 4-byte gränser och justeras i enlighet därmed, OS behöver inte "läsa igenom" hela applikationspaketet för att komma till önskad data manifestera. Varje systemprocess vet i förväg var man ska leta efter de önskade resurserna och kommer därför att utföra mycket smidigare och snabbare.

Sammanfattning av det, ziplinjering av en APK resulterar i att alla okomprimerade data i paketet ska anpassas på 4-byte gränser, vilket gör att alla delar kan nås direkt med minneskartan. RAM-förbrukningen sänks under körning eftersom frågningskoden inte behöver läsa igenom hela applikationspaketet.

NEDDELAR AV OINALJERADE APK: er

Helt förståeligt skulle situationen vara reserverad för ojusterade applikationspaket. Resursläsning skulle vara långsam och minnesanvändningen skulle vara i spektrumets högre ände. Det beror också på hur många ojusterade applikationer som finns. Om till exempel mindre antal applikationer med en ojusterad hemapplikation ser du långsammare lanseringstider för applikationer. Detta är det bästa fallet. I värsta fall kommer att ha ett antal ojusterade applikationer att resultera i att systemet upprepade gånger startar och dödar processer, kämpar med förseningar och enormt batteriladdning.

HUR GÖR DU DET?

Som nämnts tidigare blev zipalign-verktyget en del av Android SDK från 1.6 och framåt. Det finns under mappen 'verktyg' i SDK. För att använda det, kör bara kommandot:

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

var infile.apk är källfilen, och outfile.apk är utgångsfilen.

Dessutom kan du också verifiera justeringen av en APK-fil med följande kommando:

zipalign -c -v  existing.apk

var existing.apk kan vara vilket programpaket du behöver för att verifieras. Även taggen i båda kommandona måste vara ett integrerat värde (annars kommer kommandot att returnera ogiltigt). Detta värde, även om det kan vara valfritt heltal, MÅSTE alltid vara 4, vilket skulle ge 32-bitars justering. Något annat värde och det kommer inte att göra någonting.

Slutligen, för de flaggor som används i dessa kommandon,

  • -f: skriver över befintliga outfile.zip
  • -v: ger verbosignal
  • -c: kommer att bekräfta anpassningen av en given fil

FÖRSIKTIGHETSORD: zipalign-operation får endast utföras efter du har signerat APK-filen med din privata nyckel. Om zip-inriktad innan signering kommer signeringsproceduren att störa justeringen. Samma gäller för andra ändringar, tillägg eller borttagning till APK-filen. Alla ändringar efter att ha kört zipalign ångrar justeringen.

Varning: Den här guiden är endast avsedd för utbildningsändamål. Detta är inte på något sätt ett ersättare för Android-utvecklarverktygssatsen, och är inte heller avsedd att användas för utvecklingsändamål. AddictiveTips ger inget stöd för materialet som presenteras här.

watch instagram story