Hur man gör Android- och iOS-appar mindre

0 Shares

iphone-hemskärm

I en idealisk värld, om du var den enda leverantören av någon tjänst via app och användarna hade obegränsade resurser på sina enheter, skulle det inte vara någon fråga om optimering och termer som smidighet och till och med användarupplevelse skulle vara överflödiga. Men som du kanske vet är appbranschens nuvarande tillstånd allt annat än perfekt. Det finns dussintals appar som konkurrerar om till och med de enklaste tjänsterna och oavsett hur premiumenheter en användare har, det finns alltid en gräns för antalet appar som den kan fungera smidigt.

Det värsta är dock ett scenario där användarna upplever att den är skrymmande och antingen aldrig installerar den eller avinstallerar efter att de upptäckt att minnet den förbrukar är oproportionerligt efter att ha spenderat mycket tid, pengar och resurser på att utveckla och marknadsföra en app. värdet det ger.

Och vare sig det är iOS-apputveckling eller Android-apputvecklingstjänster, detta är ett problem där båda står på samma sida. Av den anledningen är det ingen tillfällighet att två av de mest populära apparna, Facebook och YouTube, också erbjuder en lite version av sin app bredvid den vanliga. Om du arbetar med iOS- eller Android-utvecklingsverksamhet, skulle du inse att problemet inte bara handlar om de tveksamma användarna, men att hålla prestanda och till och med underhåll av stora appar är exponentiellt svårare än små. Så, låt oss ta en titt på några av de verktyg och tekniker som använder storleken på dessa appar kan minskas.

För iOS-apputveckling

App gallring verktyg. Apple erbjuder en mängd verktyg på båda nivåer – butik och operativsystem för att hjälpa en app att minimera dess storlek, utnyttja enhetsfunktioner och tillgodose framtida uppdateringar. De två mest användbara av sådana verktyg är:

Skivning. Det gör det möjligt för utvecklarna att ladda upp en enda fullständig version av sin app till butiken, som sedan omvandlas till olika varianter och distribueras i enlighet därmed till enheten.

On-demand resurser. Istället för att packa allt i den ursprungliga appen är det mycket bättre att helt enkelt erbjuda en grundversion där användarna bara kan få det innehåll som de faktiskt vill ha. Om du till exempel har en app för tidningar, istället för att ge dem den fullständiga versionen, kan du erbjuda dem möjlighet att ladda ner varje avsnitt separat.

Medieoptimering. Även om media som bild, ljud, videor etc. är det som driver användarnas engagemang, är de också ansvariga för att skjuta upp storleken på vilken app som helst. Enkla uppgifter som att använda rätt upplösning och formatering kan hjälpa utvecklare att förkorta storleken utan att kompromissa med innehållskvaliteten. Till exempel kan utvecklare välja att använda PNG-format för att visa bilder, vilket inte bara förbrukar mindre minne utan också genererar kvalitet i nivå med mer populära format som JPEG.

Manager för minnesallokering. Till skillnad från skräpsamling i Java hade iOS-utvecklingen aldrig en effektiv minneshanteringsteknik. Även med automatisk referensräkning (ARC) som det har finns det vissa problem och bortfall som fortsätter att hända över tiden. Från enkla problem som övercachning till mer komplexa som att behålla cykler, det finns en mängd problem som, om de uppmärksammas ordentligt, inte bara kan lösa många buggar utan också frigöra mycket minne.

Skannar IPA-filer. Ipa-filer är de som lagrar iOS-appen tillsammans med binärerna i ARM-arkitekturen som operativsystemet bygger på. Dessa data i dessa filer uppdateras kontinuerligt och när de blir tillräckligt gamla kan det finnas massor av respektlösa data och föråldrade objekt som du enkelt raderar efter skanning.

För Android-apputveckling

Resurs krympande verktyg. Resurskrympning kan utnyttjas från Android-plugin för Gradle, som tar bort oanvända resurser från den paketerade appen, inklusive de i kodbiblioteken. Eftersom det fungerar i kombination med kodkrympningsverktyg, elimineras också de resurser som motsvarar det när du eliminerar någon del av koden.

Bildkompressor. Som diskuterat för iOS är bilder också en viktig del av Android-appar och eftersom majoriteten av innehållet i moderna appar är bildbaserade är det kanske det enklaste steget du kan ta för att minska appstorleken att komprimera dem för att konsumera mindre minne. Att minska storleken på bilderna kommer också att göra att de laddas snabbare, vilket bidrar till bättre användarupplevelse.

Kod krympande verktyg. Kodkrympning är tillgänglig med ProGuard, som upptäcker och tar bort oanvända klasser, fält, metoder och attribut från den förpackade appen, inklusive de från inkluderade kodbibliotek. Det optimerar också bytecode, tar bort oanvända kodinstruktioner och fördunklar de återstående klasserna, fälten och metoderna med korta namn, vilket är känt för att drastiskt minska storleken på .apk-filen och till och med hjälpa till med dess säkerhet i viss utsträckning.

Arkitekturminskning. Att skapa en elegant app är inte mindre än ett konstverk. Medan två mobilapplikationer kan utföra liknande uppgifter är den underliggande arkitekturen det som faktiskt bestämmer storleken och följaktligen deras prestanda. En ren arkitektur är en där olika lager av mjukvaran anpassar sig som i en lök, med progressiva beroenden som pekar inåt. Jämfört med vanliga arkitekturer där beroenden och anslutningarna mellan olika komponenter ser mer ut som ett nät, minskar den här modellen storleken drastiskt och gör ytterligare förbättringar till en lek.

För båda

Statisk kodanalysator. Det finns ett antal verktyg för statisk kodanalys för både iOS- och Android-utveckling, som när de distribueras snabbt kan upptäcka oanvända funktioner, variabler, logiska brister etc. och därmed minska den totala storleken.

Kodåtervinning. Att skapa en app är inte en engångsuppgift utan mer som en kontinuerlig process. Om du vill att din app ska bevara sin kompakta storlek och prestanda bör du överväga att återvinna koden varje chans du får. Varje gång du uppdaterar en app kommer det säkert att finnas några sektioner med kod som förlorar relevans, som du måste ta bort omedelbart för att förhindra att storleken eskaleras.

Slutgiltiga tankar

Även om det inte finns några debatter om effektiviteten och högre antagande av appar med mindre storlek, kräver procedurerna för att uppnå det målet sofistikerade verktyg och expertis som bara de företag med god erfarenhet av både iOS-apputveckling och Android-apputveckling kan ge.

Mrityunjay Kumar, innehållsutvecklare, Konstant Infosolutions.

Publicerad under licens från ITProPortal.com, en Future plc-publikation. Alla rättigheter förbehållna.

Bildkredit: Ellica / Shutterstock

0 Shares