Beschleunigen Sie die Erstellung von Gradle in Android Studio 3.2.1
Haben Sie schon einmal das Gefühl, dass Sie minutenlang darauf warten, dass die Builds in Android Studio abgeschlossen werden? Ich auch. Und es ist ziemlich nervig. Glücklicherweise gibt es einige Möglichkeiten, wie Sie dies verbessern können. Android verwendet Gradle zum Erstellen. Die neueste Version 4.6 bietet eine enorme Leistungssteigerung gegenüber früheren Versionen (Details siehe Versionshinweise).
Schritt 1: Gradle-Version aktualisieren Eine einfachere Möglichkeit, dies zu erreichen, ist: Öffnen Sie die Moduleinstellungen (Ihr Projekt)> Projektstruktur
AKTUALISIEREN
Wechseln Sie zu Gradle Version: 4.6
und wechseln Sie zu Android Plugin Version: 3.2.1
Laden Sie Gradle Release Distributive von https://services.gradle.org/distributions/gradle-4.6-all.zip herunter
und kopieren Sie es in den Gradle-Ordner:
Der letzte Schritt besteht darin, Ihre Beschreibung unter Einstellungen> Gradle hinzuzufügen
Vergessen Sie nicht, auf Übernehmen zu klicken, um die Änderungen zu speichern.
Schritt 2: Aktivieren Sie den Offline-Modus, den Gradle-Daemon und die parallele Erstellung für das Projekt. Der Offline-Modus weist Gradle an, die Aktualisierung der Aktualisierungen zu ignorieren. Gradle fragt jedes Mal nach Abhängigkeiten. Mit dieser Option wird nur das verwendet, was sich bereits auf dem Computer für Abhängigkeiten befindet. Gehen Sie von Android Studio Setting zu Gradle und klicken Sie in das Arbeitsfeld Offline.
- Gehen Sie von Android Studio zu Compiler. Fügen Sie im Befehlszeilenfeld "- offline" hinzu und klicken Sie auf Unabhängige Module parallel kompilieren.
Der nächste Schritt besteht darin, den Gradle-Daemon und den parallelen Build für Ihr Projekt zu aktivieren. Parallele Builds führen dazu, dass Ihre Projekte mit mehreren Modulen (Multi-Projekt-Builds in Gradle) parallel erstellt werden, wodurch große oder modulare Projekte schneller erstellt werden sollten.
Diese Einstellungen können durch Ändern einer Datei mit dem Namen gradle.properties im Gradle-Skriptverzeichnis (dh ~ / .gradle / gradle.properties) aktiviert werden. Einige dieser Optionen (z. B. parallel zu Complie-Modulen) sind in Android Studio verfügbar und werden dort auch von aktiviert Standardmäßig werden sie jedoch beim Erstellen vom Terminal aus aktiviert, wenn Sie sie in die Datei gradle.properties einfügen. Außerdem stellen Sie sicher, dass Ihre Kollegen dieselben Einstellungen verwenden. Aber wenn Sie in einem Team arbeiten, können Sie dieses Zeug manchmal nicht festlegen.
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit org.gradle.parallel=true
# When set to true the Gradle daemon is used to run the build. For local developer builds this is our favorite property.
# The developer environment is optimized for speed and feedback so we nearly always run Gradle jobs with the daemon.
org.gradle.daemon=true
Durch die Verwendung des Daemons werden Ihre Builds schneller gestartet, da nicht jedes Mal die gesamte Gradle-Anwendung gestartet werden muss. Der Gradle-Daemon ist nicht standardmäßig aktiviert. Es wird jedoch empfohlen, ihn immer für Entwicklercomputer zu aktivieren (für Server mit kontinuierlicher Integration jedoch deaktiviert zu lassen). FAQ zu diesem Modus finden Sie hier https://docs.gradle.org/current/userguide/gradle_daemon.html . Die Einstellung für parallele Builds kann für einige Projekte unsicher sein. Voraussetzung ist, dass alle Module entkoppelt sind oder Ihr Build fehlschlägt ( Details finden Sie unter http://gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects ).
Schritt 3: Inkrementelles Dexign aktivieren und Speichereinstellungen optimieren Sie können Ihre Builds beschleunigen, indem Sie das inkrementelle Dexing aktivieren. In der Build-Datei Ihres Moduls:
Fügen Sie diese Option Ihrem Android-Block hinzu:
dexOptions {
incremental true
}
In diesem dexOptions-Block können Sie auch die Heap-Größe für den dex-Prozess angeben, zum Beispiel:
dexOptions {
incremental true
javaMaxHeapSize "12g"
}
Wobei "12g" 12 GB Speicher ist. Weitere Informationen hierzu finden Sie hier google.github.io/android-gradle-dsl/current/ Sie können Gradle-Parameter auch in der Einstellungsdatei konfigurieren, z. B. die maximale Heap-Größe erhöhen, falls Sie ein großes Projekt haben:
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx10248m -XX:MaxPermSize=256m
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
Alle Parameter finden Sie hier: https://docs.gradle.org/current/userguide/userguide_single.html#sec:gradle_configuration_properties für Details.
Schritt 4: Deaktivieren von Antivirus Erwägen Sie, Projekt- und Cache-Dateien vom Antivirus-Scan auszuschließen. Dies ist offensichtlich ein Kompromiss mit der Sicherheit. Wenn Sie jedoch häufig zwischen Zweigen wechseln, scannt Antivirus die Dateien erneut, bevor der Gradle-Prozess sie verwenden kann, was die Erstellungszeit verlangsamt (insbesondere das Android Studio-Synchronisierungsprojekt mit Gradle-Dateien und Indizierungsaufgaben). Messen Sie die Erstellungszeit und verarbeiten Sie die CPU mit und ohne aktiviertem Antivirus, um festzustellen, ob dies in Zusammenhang steht. Ich hoffe das hilft. Hinterlassen Sie einen Kommentar, wenn Sie Fragen oder andere Tipps zur Verbesserung der Build-Leistung haben.
hilfreicher Link