In meinem Fall gab es zwei Hauptursachen für Speicherprobleme: die IDE und Gradle:
Android Studio (bis zu 1,5 GB)
Die JVM der IDE ist für eine maximale Heap-Größe konfiguriert. Sie können dies in der unteren rechten Ecke der Hauptoberfläche sehen:
Sie können dies reduzieren, indem Sie die speicherbezogenen Einstellungen in der .vmoptions
Datei bearbeiten . Zum Beispiel habe ich meine maximale Heap-Größe auf 512 MB geändert:
-Xmx512m
Leider habe ich festgestellt, dass das Verringern dieses Werts die Häufigkeit des vorübergehenden Einfrierens von Android Studio erhöht, möglicherweise um die Speicherbereinigung durchzuführen.
Gradle (bis zu 1,5 GB)
Gradle kann nach einer Weile der Entwicklung auch viel RAM verwenden. Windows zeigt es nur als Java(TM) Platform SE Binary
:
Sie können dies beheben, indem Sie die Gradle JVM-Optionen ändern. Sie können dies auf Benutzerbasis tun, indem Sie Folgendes bearbeiten gradle.properties
:
- Öffnen Sie die
gradle.properties
Datei und erstellen Sie sie, wenn sie nicht vorhanden ist:
- Windows:
%USERPROFILE%\.gradle\gradle.properties
- Linux / Mac:
~/.gradle/gradle.properties
Aktualisieren Sie die org.gradle.jvmargs
Eigenschaft und erstellen Sie sie gegebenenfalls. Ich habe meine darauf eingestellt:
org.gradle.jvmargs=-Xmx256m -XX:MaxPermSize=256m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
Ich habe keinen Unterschied in der Build-Leistung für mein kleines Projekt festgestellt, bei dem die maximale Heap-Größe auf 256 MB ( -Xmx256m
) festgelegt ist.
Beachten Sie, dass Sie möglicherweise Android Studio neu starten müssen, damit der alte Gradle-Prozess beendet wird. Andernfalls werden möglicherweise beide gleichzeitig ausgeführt.
Emulator
In Bezug auf den Emulator, der viel RAM beansprucht, zeigt Ihr Screenshot, dass er ungefähr 800 MB benötigt. Sie können auswählen, wie viel RAM dem Emulator zugewiesen werden soll:
- Bearbeiten Sie die AVD
- Drücken Sie auf Erweiterte Einstellungen anzeigen
- Reduzieren Sie den RAM- Wert