Cum să reduceți dimensiunea fișierului APK al aplicației dvs. Android de către CarlosMillan Medium

CarlosMillan

28 septembrie 2018 7 min citit

Îmi place Android, am fost utilizator de acest minunat sistem de operare Google de ani de zile, am o mare varietate de aplicații în Google Play Store și există de unde alege (nu mai vorbesc din punctul meu de vedere). Acum, unul dintre lucrurile pe care le privesc înainte de a descărca o aplicație este dimensiunea sa, deoarece cu atât de multe aplicații există, este ușor pentru tine să rămâi fără spațiu de stocare și să decidi ce aplicație folosești mai puțin pentru a o șterge. Alte considerații sunt că de multe ori nu avem la îndemână o rețea Wi-Fi și trebuie să descărcăm aplicația cu planul de date, cu consecința că rămânem repede din prețioasa MB pe care o avem (acum nu mai este mizerie, deoarece Hostspots-urile sau punctele Wi-Fi gratuite sunt în creștere în diferite părți, cum ar fi centrele comerciale, stația de transport etc.).

fișierului

Am văzut acest articol în engleză și vreau să îl împărtășesc în spaniolă pentru cei care încă nu se descurcă bine cu limba nord-americană. Indicați câteva sfaturi pentru a reduce dimensiunea aplicațiilor pe care le scriem, astfel încât toată lumea să se bucure de ele. Las sursa originală la final.

ProGuard este cel mai important amplificator de bytecode Java. Optimizați codul secundar și eliminați instrucțiunile neutilizate. Redenumiți clasele, câmpurile și metodele folosind nume scurte fără sens, ceea ce face codul dvs. mai sigur decât ingineria inversă. Face aplicațiile Java și Android cu până la 90% mai mici și cu până la 20% mai rapide. Puteți obține mai multe informații despre programul https://www.guardsquare.com/en/proguard.

Pentru a activa proguard facem următoarele:

Deschideți fișierul build.gradle în Android Studio și adăugați liniile: minifyEnabled true și shrinkResources true.

Nu uitați însă că procesul de reducere a codului încetinește timpul de construire. Deci, ar trebui să o folosiți numai atunci când urmează să lansați aplicația sau dacă o dați pentru testare.

minifyEnabled este responsabil pentru reducerea fișierelor de cod (de exemplu, Java). Este principala caracteristică a ProGuard și vă ajută să reduceți APK-ul, precum și să faceți dificilă ingineria inversă.

shrinkResources Este folosit pentru a elimina fișierele de resurse neutilizate (cum ar fi imaginile și alte active). De exemplu, dacă creați cu o bibliotecă Android, dar nu utilizați unele imagini în acea bibliotecă Android, acestea nu vor fi incluse în versiunea finală.

2. Desenabile vectoriale

După cum sugerează și numele, desenele vectoriale se bazează pe grafică vectorială, spre deosebire de grafica raster. Este similar cu fișierul SVG. În Android Vector Drawable, acestea sunt create cu fișiere XML. Înainte de a adăuga Vector Drawable în Android SDK, dezvoltatorul a trebuit să creeze mai multe versiuni de imagini pentru rezoluții diferite ale ecranului. Acest lucru durează mai mult pentru a crea active suplimentare și consumă mai mult spațiu, ceea ce crește dimensiunea Apk.
Acum nu mai este nevoie să proiectați imagini de dimensiuni diferite pentru mdpi, hdpi, xhdpi etc. Cu Vector Drawable, trebuie să creați imaginea o singură dată ca fișier xml și o puteți scala pentru toate dpi și pentru diferite dispozitive. De asemenea, acest lucru nu economisește spațiu, dar simplifică și întreținerea. Puteți afla cum să creați desenabile vectoriale la http://www.androidtutorialshub.com/android-vector-drawable-example-using-appcompat-support-library/

3. Servicii Google Play

În versiunile 6.5 ale serviciilor Google Play, a trebuit să compilați întregul pachet API în aplicația dvs. În unele cazuri, acest lucru a făcut mai dificilă menținerea numărului de metode din aplicația dvs. (inclusiv API-uri cadru, metode de bibliotecă și propriul cod) sub limita de 65.536.