Ho avuto problemi come questo soprattutto durante il debug attivo tramite il mio telefono; a volte ci sono voluti 27 minuti. Ho fatto le seguenti cose e ho preso nota della spiegazione sotto ciascuna - uno potrebbe funzionare per te:
- Modificato il mio file gradle.properties (in Script Gradle se hai la visualizzazione del file di progetto nell'opzione Android O nella cartella del progetto). Ho aggiunto questo perché il mio computer ha un po 'di memoria da riserva: alla fine è possibile assegnare valori diversi a seconda delle specifiche del computer e dei requisiti minimi di Android Studio (Xmx8000m -XX: MaxPermSize = 5000m):
org.gradle.daemon = true
org.gradle.configureondemand = true
org.gradle.parallel = true
android.enableBuildCache = true
org.gradle.caching = true
org.gradle.jvmargs = -Xmx8000m -XX: MaxPermSize = 5000m -XX: + HeapDumpOnOutOfMemoryError -Dfile.encoding = UTF-8
- Questo non ha risolto completamente il mio problema nel mio caso. Quindi ho anche fatto come altri avevano suggerito prima di rendere offline il mio processo di compilazione:
File -> Impostazioni / Preferenze -> Build, Execution, Deployment -> Gradle
Impostazioni globali del grado (in basso)
Selezionare la casella di controllo denominata: Lavoro offline.
- Ciò ha ridotto sostanzialmente i tempi ma era irregolare; a volte ci voleva più tempo. Pertanto ho apportato alcune modifiche su Instant Run:
File -> Impostazioni / Preferenze -> Build, Execution, Deployment -> Instant Run
Selezionato: abilita la corsa istantanea al codice hot swap ...
Controllato: riavvia l'attività sulle modifiche al codice ...
La mossa sopra era anche irregolare e quindi ho cercato di scoprire se il problema potrebbe essere i processi / la memoria che sono stati eseguiti direttamente sul mio telefono e computer. Qui ho liberato un po 'di spazio di memoria nel telefono e nello spazio di archiviazione (che era utilizzato al 98% - fino al 70%) e anche in Task Manager (Windows), ho aumentato la priorità di Android Studio e Java.exe su Alta. Fai questo passo con cautela; dipende dalla memoria del tuo computer.
Dopo tutto questo il mio tempo di creazione durante il debug attivamente sul mio telefono a volte è sceso a 1 ~ 2 minuti ma a volte è aumentato. Ho deciso di fare un hack che mi ha sorpreso portandolo al secondo posto, ma lo stesso progetto che mi ha dato 22-27 minuti è stato 12 secondi !:
Collegare il telefono per il debug, quindi fare clic su Esegui
Dopo l'avvio, scollegare il telefono: la compilazione dovrebbe continuare più velocemente e generare un errore alla fine che indica questo: "app" della sessione: errore durante l'installazione degli APK
Riconnetti il telefono e fai di nuovo clic su ESEGUI ...
IN ALTERNATIVA
Se lo script / funzione / metodo di cui sto eseguendo il debug è puramente JAVA, non JAVA-android, ad es. Testare un'API con JSONArrays / JSONObjects, collaudo le mie funzioni / metodi java su Netbeans che possono compilare un singolo file e mostrare l'output più velocemente, quindi rendere modifiche necessarie sui miei file Android Studio. Questo mi fa anche risparmiare un sacco di tempo.
MODIFICARE
Ho provato a creare un nuovo progetto Android nella memoria locale e ho copiato tutti i miei file dal progetto precedente nel nuovo progetto: java, res, manifest, gradle app e gradle project (con la più recente dipendenza classpath gradle). E ora posso costruire sul mio telefono in meno di 15 secondi.