În acest articol, vom examina sistemul de construire Android pentru proiectele Gradle. De asemenea, aflați de ce este atât de lent și ia în considerare 9 modalități de a accelera asamblarea proiectului Gradle în Android Studio.
Ce este Gradle?
Gradle este un sistem pentru proiecte de construcție. Este următorul pas în evoluția instrumentelor de construire bazate pe mașina virtuală Java (JVM). Gradle a incorporat cele mai bune idei ale instrumentelor existente (Ant și Maven), și a adăugat, de asemenea, o mai mare flexibilitate și libertate în configurația de configurare.
În plus față de beneficii, noua abordare aduce și noi provocări: chiar și cel mai simplu apel la Gradle este destul de lent. Pe un laptop de dimensiuni medii, lansarea unei sarcini simple cu o listă de sarcini de proiect disponibile durează cel puțin 10 secunde. IDE-ul oficial pentru dezvoltarea aplicațiilor Android este Android Studio și Gradle este folosit în acesta.
Programele Android devin din ce în ce mai complexe, abordarea modulară a dezvoltării câștigă popularitate, astfel încât performanța în noile realități este crucială. Creșterea vitezei de construire a unui proiect pentru doar câteva secunde oferă un impuls bun de performanță.
Cum de a crește viteza de montaj al proiectului
Mai jos, am colectat metodele pe care le folosesc la construirea proiectului Gradle:
1. Asigurați-vă că utilizați întotdeauna cea mai recentă versiune a lui Gradle.
De regulă, cu fiecare nouă actualizare există o îmbunătățire semnificativă a performanței. Dacă puneți versiuni noi și actualizări în timp, pe care Android Studio le oferă imediat după descărcare, nu ar trebui să existe probleme cu versiunea învechită a lui Gradle.
2. Încercați să minimizați utilizarea modulelor
Uneori este necesar să se creeze o bibliotecă pentru a corecta ceva sau pentru ao schimba în funcție de nevoile fiecăruia. Evitați astfel de situații, de la asamblarea modulului
De 4 ori mai mare decât orice dependență de borcan sau aar. Acest lucru se datorează faptului că modulul trebuie să fie reconstruit de la zero de fiecare dată.
3. Porniți gradul de lucru offline
Puteți bifa caseta de lângă elementul independent: Preferences => Build, Execution, Deployment => Build Tools => Gradle. Acest lucru nu va permite ca Gradle să obțină acces la rețea în timpul asamblării și să-l forțeze să lucreze cu dependențele proiectului din memoria cache.
Rețineți că această funcție funcționează corect numai atunci când toate dependențele sunt deja încărcate cu succes și stocate în memoria cache. Dacă trebuie să modificați sau să adăugați o nouă dependență în fișierul build.gradle. atunci va trebui să dezactivați opțiunea de lucru autonomă - altfel "construirea va eșua".
4. Folosiți Daemon Gradle
Deschideți fișierul gradle.properties din rădăcina proiectului și adăugați următoarea linie de cod:
Acest lucru economisește timpul necesar pentru a începe Gradle, deoarece devine un proces de fundal. Trebuie notat faptul că, după adăugarea acestei opțiuni, Gradle va consuma chiar mai mult RAM la construirea proiectului.
5. Folosiți paralelizarea procesului de construire
Această linie vă permite să compilați mai multe module în același timp. Rețineți că aceasta va crește performanța numai dacă aveți un proiect complex cu multe module.
6. Optimizați configurația proiectului înainte de asamblare
Adăugați opțiunea org.gradle.configureondemand = true, iar Gradle va putea verifica modificările la nivelul proiectului și reutiliza configurația.
Gradle configurează fiecare proiect înainte de executarea sarcinilor, indiferent dacă este într-adevăr necesar pentru o anumită adunare. Modul "Configurare la cerere" modifică comportamentul standard. Ca și în modul paralel, această opțiune va avea cel mai mare efect în proiectele cu mai multe module.
7. Configurați opțiunile de compilare pentru proiect
Înlocuiți setările implicite de utilizare a memoriei cu următoarele:
org.gradle.jvmargs = -Xmx2048m -XX: MaxPermSize = 512M -XX: + HeapDumpOnOutOfMemoryError -Dfile.encoding = UTF-8
Acest lucru va permite compilatorului Java să utilizeze până la 2 GB (-Xmx2048m) de memorie RAM disponibilă. Desigur, puteți face acest lucru numai dacă aveți mai multă memorie disponibilă decât 2 GB.
8. Evitați dependențele dinamice
Exemplu: compile 'com.android.support:design:+'
Aici semnul plus (+) în final ne spune că se folosește dependența dinamică.
Înlocuirile dinamice încetinesc construirea, deoarece este căutată cea mai recentă versiune pentru fiecare construcție. Pentru a spori eficiența, trebuie să reparăm în mod clar versiunea.
9. Utilizați numai dependențele necesare
Adăugați întotdeauna cea mai specifică dependență de proiect. De exemplu, în proiect avem nevoie doar de hărți de la Google. În loc să scrie așa:
compile 'com.google.android.gms: play-services: 10.0.1'
ar trebui întotdeauna să fie scris astfel:
compile 'com.google.android.gms: play-services-maps: 10.0.1'.
Sper că aceste metode de optimizare a procesului de construire vă vor salva câteva ore de dezvoltare 🙂
Și ce modalități de a accelera gradul pe care îl utilizați în proiectele dvs.?
Mai multe articole utile!
- Structura proiectului în Android Studio
- Ce ar trebui să fac în cazul în care Android Studio emite o eroare: Pluginul este prea vechi, actualizați la o versiune mai recentă sau setați ANDROID_DAILY_OVERRIDE?
- Noi scriem Hello World pe Android. Lucrul în Android Studio
- Ce este Fragmentul Android: ciclul de viață și un exemplu de utilizare a fragmentelor
- Un exemplu de utilizare a programului ImageButton pe Android
- Un exemplu de utilizare a aplicației FloatingActionButton pe Android
- Prezentare generală și exemplu de utilizare a bibliotecii ButterKnife pe Android
- Lucrul cu WebView pe Android: un exemplu și o descriere a caracteristicilor
- Un exemplu de lucru cu Messenger. Aplicații pe Android
- Prezentare generală a bibliotecii Picasso - descărcarea și stocarea imaginilor în cache pe Android