Android SDK-Ordner nimmt viel Speicherplatz ein. Müssen wir alle System-Images behalten?
Lesezeit: 9 Minuten
Virales Patel
Es gibt ein viele Systemabbilder stapeln sich auf meiner Festplatte im Android-SDK-Ordner. Ich benutze den Emulator kaum. Kann einmal in 6 Monaten sein. Der größte Teil meiner Entwicklung findet direkt auf dem Gerät statt. Was ich überprüfen wollte war, Wird das Entfernen der System-Images (zumindest für die alten APIS, dh < 22) die Entwicklung beeinflussen?
Auch der google apis-Ordner ist unten zu sehen. Sollte ich es für alle Versionen behalten oder reicht nur die in der neuesten Version?
Danke! Was ist mit dem google_apis-Ordner …. kann ich diese auch entfernen? wirkt sich das auf mein Debugging auf dem Gerät aus?
– Viraler Patel
12. Juni 2015 um 6:22 Uhr
Falls es jemanden interessiert, sei der Disk Space Analyzer auf Bild genannt WinDirStat.
– Tomáš Zato – Wiedereinsetzung von Monica
5. November 2015 um 15:24 Uhr
Randnotiz: So einfach wie ein du -sh* auf einer Linux-Box!
– Benutzer3
27. Mai 2017 um 18:38 Uhr
unter Linux, um die größten Verzeichnisse anzuzeigen: du -m ~/src/android-sdk-linux | sort -n|tail -100
– Scott Stensland
7. Juni 2017 um 19:51 Uhr
@lijo hat die Frage aktualisiert
– Viraler Patel
7. Juli 2017 um 18:11 Uhr
Frosch
Systemabbilder sind vorinstallierte Android-Betriebssysteme und sind es nur von Emulatoren verwendet. Wenn Sie Ihr echtes Android-Gerät zum Debuggen verwenden, benötigen Sie sie nicht mehr, sodass Sie sie alle entfernen können.
Der sauberste Weg, sie zu entfernen, ist die Verwendung von SDK Manager. Öffnen Sie SDK Manager und deaktivieren Sie diese Systemabbilder und wenden Sie sie dann an.
Sie können auch andere Komponenten (z. B. alte SDK-Levels) entfernen, die keinen Nutzen haben.
Danke für die ausführliche Antwort abforce … macht es klar. Ein letzter Zweifel. Der google_apis-Ordner, der in jeder Android-Version im obigen Screenshot zu sehen ist, wird auch nur für die System-Images benötigt, richtig? kann man sie auch entfernen?
– Viraler Patel
12. Juni 2015 um 7:56 Uhr
Können wir diese Datei auf ein anderes Laufwerk verschieben, wenn ja, welche Einstellungen müssen nach dem Verschieben der Bilder vorgenommen werden?
– gleicher
9. Februar 2017 um 7:14 Uhr
@sameer Sie können es verschieben und dann Ihre IDE darauf verweisen, wo sich der SDK-Manager befindet. Ich habe das einmal versucht, aber es hat dazu geführt, dass meine Eclipse jedes Mal 5 Minuten brauchte, um sich einfach zu öffnen … das Löschen der Systemabbilder hat mir 40 GB auf meiner SSD gespart!
– Dämonenschlacht335
15. März 2017 um 17:32 Uhr
Es gibt viele Android SDK Build-Tools in meinem SDK-Manager. Das Löschen alter Revisionen kann zu Fehlern führen oder die Leistung beeinträchtigen?
– Shima Erfan
31. Dezember 2017 um 19:57 Uhr
Virales Patel
Sie müssen die Systemabbilder nicht aufbewahren, es sei denn, Sie möchten den Emulator auf Ihrem Desktop verwenden. Zusammen damit können Sie andere unerwünschte Dinge entfernen, um Speicherplatz freizugeben.
Als Antwort auf meine eigene Frage hinzufügen, da ich dies mehr als ein paar Mal Leuten in meinem Team erzählen musste. Daher diese Antwort als Referenz, um sie mit anderen Neugierigen zu teilen.
In den letzten Wochen gab es mehrere Kollegen, die mich fragten, wie man das unerwünschte Zeug sicher loswird, um Speicherplatz freizugeben (die meisten von ihnen waren Anfänger). Ich habe sie auf diese Frage umgeleitet, aber sie haben mich um Schritte gebeten. Für Android-Anfänger gibt es hier eine Schritt-für-Schritt-Anleitung zum sicheren Entfernen unerwünschter Inhalte.
Notiz
Löschen Sie nicht blindlings alles direkt von der Festplatte, von dem Sie “denken”, dass es nicht belegt werden muss. Ich habe das einmal gemacht und musste es erneut herunterladen.
Stellen Sie sicher, dass Sie eine Liste aller aktiven Projekte mit der Art von Emulatoren (falls vorhanden) und API-Levels und Build-Tools haben, die erforderlich sind, damit diese weiterhin ordnungsgemäß arbeiten/kompilieren können.
Stellen Sie zunächst sicher, dass Sie keine Emulatoren verwenden und Ihre Entwicklung immer auf einem physischen Gerät durchführen. Falls Sie Emulatoren benötigen, notieren Sie sich die API-Ebenen und die Art der Emulatoren, die Sie benötigen. Entfernen Sie diese nicht. Befolgen Sie für den Rest die folgenden Schritte:
Schritte zum sicheren Löschen unerwünschter Inhalte aus dem Android SDK-Ordner auf der Festplatte
Öffnen Sie den eigenständigen Android SDK-Manager. Führen Sie zum Öffnen einen der folgenden Schritte aus:
Klicken Sie in Android Studio oder Eclipse auf die Schaltfläche SDK-Manager in der Symbolleiste
Gehen Sie in Android Studio zu den Einstellungen und suchen Sie nach „Android SDK“. Klicken Sie auf Android SDK -> „Open Standalone SDK Manager“
Öffnen Sie in Eclipse das Menü „Fenster“ und wählen Sie „Android SDK Manager“
Navigieren Sie zum Speicherort des android-sdk-Verzeichnisses auf Ihrem Computer und führen Sie „SDK Manager.exe“ aus.
.
Deaktivieren Sie alle Elemente, die mit „System Image“ enden. Jede API-Ebene wird mehr als ein paar haben. Falls Sie einige benötigen und die Liste bereits ermittelt haben, lassen Sie sie aktiviert, um zu vermeiden, dass sie verloren gehen und erneut heruntergeladen werden müssen.
.
Optional (kann dazu beitragen, geringfügig mehr Speicherplatz zu sparen): Um mehr Speicherplatz freizugeben, können Sie nicht benötigte API-Ebenen auch vollständig deaktivieren. Seien Sie erneut vorsichtig, um zu vermeiden, dass Sie etwas erneut herunterladen, das Sie tatsächlich in anderen Projekten verwenden.
.
Stellen Sie am Ende sicher, dass Sie mindestens Folgendes haben (siehe Bild unten), damit die verbleibenden API-Ebenen nahtlos mit Ihrem physischen Gerät arbeiten können.
Am Ende sollten die sauber installierten Komponenten des Android SDK im SDK-Manager ungefähr so aussehen.
Entfernen Systembilder im SDK-Manager ist die sauberste Lösung. Dies sollte zumindest mehr Upvotes haben oder sogar die akzeptierte Antwort sein.
– Levit
2. Juni 2016 um 7:51 Uhr
Danke @Levit, dies ist eine Antwort auf meine eigene Frage, die ich später gepostet habe, weil ich dachte, dass die Leute davon profitieren würden, diesen Ansatz zu kennen. Die Antwort, die ich als akzeptiert markiert habe, hat mir damals tatsächlich geholfen.
– Viraler Patel
2. Juni 2016 um 7:56 Uhr
Das war sehr hilfreich, danke. Die einzige Änderung an Ihren Schritten, die ich vorschlagen würde, ist Schritt Nr. 2. Sie möchten die Elemente, die Sie entfernen möchten, ÜBERPRÜFEN und dann unten rechts auf die Schaltfläche Pakete löschen klicken. Danke noch einmal!
– Adam Plocher
12. Juli 2016 um 21:52 Uhr
Vielen Dank, ich wusste nicht, dass das SDK Emulator-Images herunterlädt (Mein Mac hat geweint, dass ihm der Speicherplatz ausgeht, bis ich diesen Beitrag gesehen habe).
– ScarletMerlin
28. September 2017 um 14:13 Uhr
Erwägen Sie, Ihre Antwort zu aktualisieren, da die neueren Versionen von Android Studio jetzt Android SDKs an diesem Ort speichern: C:\Users\ username \AppData\Local\Android\Sdk. Außerdem weiß ich nicht, ob es nur an mir liegt oder ob es in den neueren Versionen von Android Studio keinen eigenständigen Android SDK Manager gibt.
– Lloyd Dominic
24. Mai 2020 um 8:04 Uhr
gut
Ich hatte 20,8 GB im Ordner C:\Users\ggo\AppData\Local\Android\Sdk\system-images (6 Android-Images: – android-10 – android-15 – android-21 – android-23 – android-25 – android-26 ).
Ich habe den Ordner C:\Users\ggo\AppData\Local\Android\Sdk\system-images komprimiert.
Jetzt braucht es nur noch 4,65 GB.
Ich bin bis jetzt auf kein Problem gestoßen…
Die Kompression scheint von 2/3 bis 6 zu variieren, manchmal viel mehr:
wie hast du es komprimiert?
– krv
21. Juli 2017 um 14:06 Uhr
Rechtsklick auf den zu komprimierenden Ordner (hier System-Images-Ordner) => Eigenschaften => Erweitert => “Inhalt komprimieren, um Speicherplatz zu sparen” aktivieren => OK => Übernehmen => “Änderungen auf diesen Ordner, Unterordner und Dateien anwenden” auswählen ” (sollte standardmäßig ausgewählt sein) und klicken Sie auf OK. (Möglicherweise ist es besser, Android Studio zu beenden und die derzeit laufenden Emulatoren vor dem Komprimieren zu schließen, da einige Dateien möglicherweise gesperrt sind).
– geh
22. Juli 2017 um 20:02 Uhr
Dies wirkt sich auf die Leistung aus, also tun Sie es nur für selten verwendete Dateien (ausgenommen bereits komprimierte Dateien wie Foto, Video, Zip, JAR usw.).
– Leon
13. Januar 2019 um 3:12 Uhr
Ich empfehle zwei Schritte, um das aufgeblähte SDK-Problem zu lösen.
Zuerst habe ich alle bis auf zwei Versionen von Android entfernt:
Die aktuelle Version, z. B. 6.0 Marshmallow zum Zeitpunkt dieses Schreibens. Diese Version dient zum Testen und Entwickeln der neuesten und besten Geräte, die auf den aktuellen Nexus-Handys sowie einigen anderen Marken ausgeführt werden.
Eine ältere Version, zB 4.04 Ice Cream Sandwich. Dies soll die Kompatibilität für die überwiegende Mehrheit der Mobiltelefone gewährleisten. Sie verlieren einige Funktionalität der neueren Versionen, gewinnen aber den kleinsten gemeinsamen Nenner der Kompatibilität.
Zweitens habe ich die Emulatoren entfernt und nur die beiden oben behalten. Ich habe ihm gesagt, dass es nicht den kompletten Systemstatus auf der Festplatte speichern soll, was in der Tat davor warnt, dass Sie viel Speicherplatz beanspruchen, obwohl es den Start beschleunigt. Starte einfach den Emulator, bevor du morgens deinen Kaffee kochst 🙂
Wenn das zu viel Platz ist, entfernen Sie die Emulatoren vollständig. Holen Sie sich ein paar ältere Handys bei Ebay, die Ihnen alle Testplattformen bieten, die Sie benötigen. Sie müssen nicht einmal vollständig funktionsfähig sein – viele Apps benötigen zum Beispiel keine SIM- und Mobilfunkverbindung.
Meine Android-Umgebung beanspruchte 32 GB auf meinem 128-GB-Macbook Air. Konnte nicht weitermachen. Eines Tages werden sie Terabyte Macbook Airs herstellen, aber bis dahin müssen sie abspecken.
Dies ist das Minimum, das ich für die tägliche Android-Entwicklung aufbewahre (einschließlich Produktionscode). Nur die neuesten Versionen von API 25 bis API 27 (Nougat bis Android P) enthalten, und Sie können damit hervorragend arbeiten.
Um noch mehr zu minimieren, behalten Sie einfach eine der folgenden Versionen bei und behalten Sie eine niedrigere Version bei, dh API 16 mit denselben heruntergeladenen Dateien wie unten.
Kevin ABRIOUX
Es gibt die Möglichkeit, das System-Image sicher zu entfernen
Gehen Sie in der Symbolleiste in den SDK-Manager:
Gehen Sie in das Android SDK:
Deaktivieren Sie auf der Registerkarte SDK-Plattformen, welche Plattform Sie deinstallieren möchten:
Klicken Sie auf OK und bestätigen Sie das Löschen:
Narender Gusain
Durch das Löschen aller Emulatoren wird der Speicher manchmal nicht auf unsere Erwartung reduziert. Öffnen Sie also unten den Pfad in Ihrem c-Laufwerk
C:\Benutzer{Benutzername}.android\avd
In diesem AVD-Ordner können Sie alle AVDs sehen, die Sie zuvor erstellt haben. Sie müssen also alle avds löschen, die alle unbenutzten Leerzeichen entfernen, die von Ihrem Emulator erfasst werden. Dann erstellen Sie den neuen Emulator für Sie.
13507700cookie-checkAndroid SDK-Ordner nimmt viel Speicherplatz ein. Müssen wir alle System-Images behalten?yes
Danke! Was ist mit dem google_apis-Ordner …. kann ich diese auch entfernen? wirkt sich das auf mein Debugging auf dem Gerät aus?
– Viraler Patel
12. Juni 2015 um 6:22 Uhr
Falls es jemanden interessiert, sei der Disk Space Analyzer auf Bild genannt WinDirStat.
– Tomáš Zato – Wiedereinsetzung von Monica
5. November 2015 um 15:24 Uhr
Randnotiz: So einfach wie ein du -sh* auf einer Linux-Box!
– Benutzer3
27. Mai 2017 um 18:38 Uhr
unter Linux, um die größten Verzeichnisse anzuzeigen: du -m ~/src/android-sdk-linux | sort -n|tail -100
– Scott Stensland
7. Juni 2017 um 19:51 Uhr
@lijo hat die Frage aktualisiert
– Viraler Patel
7. Juli 2017 um 18:11 Uhr