Perché Android Studio ricostruisce il progetto in modo così lento anche quando non ci sono cambiamenti nelle fonti?

Quando faccio alcune modifiche nel codice sorgente, Android Studio (in realtà gradle) deve ribuild il progetto. È chiaro.

Perché la seconda costruzione richiede quasi la stessa quantità di tempo come la prima costruzione, anche se non ho apportto modifiche al progetto? Quando esaminerò GradleConsole, aspetta l'attività "assembleDubug". Penso che gradle dovrebbe essere consapevole che non ci sono cambiamenti e non dovrebbe perdere così tanto tempo su di esso.

  • Android Sostituisci "..." con carattere di sospensione
  • Contrassegnato con android.text.ClipboardManager deprecato
  • Non posso dividere correttamente due numbers
  • Android Test Sharding
  • Scattare foto dalla camera senza anteprima
  • Android: estraendo le funzionalità wifi con contiene
  • API per gli occhiali di Google
  • Il marker Google di Google viene sostituito dal rettangolo di limitazione dello zoom
  • Recupera l'indirizzo dalla tabella "canonical_addresses"
  • Spostare gli events DOPO LongPress
  • Ottieni la versione di Android OS da utente-agente
  • Ridurre la dimensione dell'image della camera
  • 4 Solutions collect form web for “Perché Android Studio ricostruisce il progetto in modo così lento anche quando non ci sono cambiamenti nelle fonti?”

    Infine, ho trovato la soluzione: triggersre il lavoro offline per gradle.

    immettere qui la descrizione dell'immagine

    o utilizzando CLI: ./gradlew --offline assembleDebugOrWhatever

    La console del gradle dice :app:assemeble UP-TO-DATE ?

    Se si esamina la configuration di esecuzione, si potrebbe notare nella parte inferiore di Before Launch: Gradle-aware Make

    Questo sta solo dicendo di ricompilare (se necessario) prima di eseguire, ma che il rilevamento è delegato a Gradle. Gradle ricompilerà solo se rileva che ha bisogno, ma l'attività di assemble deve ancora tentare di eseguire per rilevare UP-TO-DATEness. Quindi dice che sta funzionando, ma in realtà non fa nulla. Quando l'ho eseguito due volte in una fila, la prima volta che occorre un po 'per fare tutto, ma per la seconda volta è sufficiente passare rapidamente nell'elenco delle attività (con un paio di UP-TO-DATE) e distribuisce a telefono / emulatore.

    Questo non è un problema per se. E non ha niente a che fare con Android Studio poiché Gradle è solo un plugin Android che ti aiuta a build i tuoi progetti. Devi comprendere appieno quello che gradle fare per sapere perché Android Studio lo usa each volta che fai funzionare le tue applicazioni. Date un'occhiata a questa bella domanda su gradle e sull'articolo del sito web dello sviluppatore di android . Infine, dalla mia esperienza personale, quando si tratta di trattare con Android Studio e Eclipse per lo sviluppo di Android, è necessario essere un piccolo paziente. Spero che questo aiuti in qualche modo.

    Per evitare di ribuild each TEMPO, vado alle impostazioni del mio progetto del module -> Dipendenze e su una delle voci della mia libreria -> Applica -> Ok -> Rendi rigenerando R.java. Puoi anche provare a deselect " Utilizza build esterno " nelle impostazioni del compilatore:

    File -> Impostazioni (Ctrl + Alt + S) -> Compilatore -> Deseleziona "Utilizza build esterno"

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.