Ich lösche einige Ordner und Dateien, um mehr Platz auf meinem Laufwerk zu schaffen. Ich kenne das im Pfad:
~/Library/Developer/CoreSimulator/Devices/
Es gibt Ordner für jeden Simulator und jede Version. Dieser Ordner hat ungefähr 11 GB Größe für mich. Ich weiß, dass ich Simulatoren mit alten Versionen löschen könnte, die ich nicht mehr verwende. Aber von dieser eindeutigen Kennung kann ich nicht wissen, welche die richtige ist und welche nicht. Also meine Frage: Kann ich alles löschen? Es ist in Ordnung, wenn ich das nächste Mal keine meiner Apps im Simulator habe, aber kann ich noch etwas verlieren? Alte Versionen des Simulators? Oder etwas anderes? Vielen Dank
Lösung des Problems
In ~/Library/Developer/CoreSimulator/Devices/
diesem Pfad speichert Xcode die meisten Daten, die für Ihre individuellen Simulatorgeräte benötigt werden.
Der Vorschlag von Beau Nouvelle, heruntergeladene Simulatorversionen zu löschen, würde die Größe dieser Ordner nicht ändern, da die Laufzeiten an anderer Stelle gespeichert werden.
Wenn Sie zum Terminal gehen, können Sie das simctl- Tool (im Lieferumfang von Xcode 6+ enthalten) verwenden, um alle tatsächlichen Simulatorgeräte aufzulisten, die Sie haben, zusammen mit den IDs, damit Sie herausfinden können, welche Ordner gelöscht werden müssen.
Beachten Sie, dass ich in dieser Antwort ständig xcrun simctl verwende. Das fügt den Dingen ein wenig Abstraktion hinzu, indem xcrun die passende Version von simctl für Ihren aktuell ausgewählten Xcode nachschlagen muss. Abhängig von Ihrem System können Sie möglicherweise damit auskommen, den Teil "xcrun" zu löschen, und die Befehlszeile sollte immer noch das simctl-Tool finden.
xcrun simctl list devices
Hier sind einige ausgewählte Ausschnitte der Ergebnisse, die ich erhalten habe:
== Geräte ==
-- iOS 8.2 --
-- iOS 8.4 --
iPhone 6 Plus (23E36868-715A-48C8-ACC3-A735C1C83383) (Herunterfahren)
iPad Air (2928379B-70E3-4C59-B5BA-66187DDD3516) (Abschaltung)
-- iOS 9.1 --
Mein benutzerdefiniertes iPhone 4s (4F27F577-FFD0-42C1-8680-86BBA7394271) (Abschaltung)
iPad Retina (85717B35-313A-4161-850E-D99D5C8194A6) (Abschaltung)
-- Nicht verfügbar: com.apple.CoreSimulator.SimRuntime.iOS-9-0 --
iPhone 4s (D24C18BC-268C-4F0B-9CD8-8EFFDE6619E3) (Herunterfahren) (nicht verfügbar, Laufzeitprofil nicht gefunden)
Daran können Sie sehen, dass ich keine iOS 8.2-Simulatorgeräte habe. Ich habe einige 9.1- und 8.4-Simulatorgeräte. Ich habe ein 9.0-Simulatorgerät erstellt (ein Überbleibsel meiner Arbeit an Xcode 7.0), aber ich habe nicht die 9.0-Simulatorlaufzeit selbst. Das ist also ein guter Kandidat zum Löschen oder eine Erinnerung, dass ich den 9.0-Simulator in Xcode herunterladen sollte.
Wenn Sie möchten, können Sie diese IDs verwenden, um den Ordner für das betreffende Gerät zu identifizieren und manuell zu löschen (in diesem Fall würde ich den Ordner „D24C18BC-268C-4F0B-9CD8-8EFFDE6619E3" löschen), aber Sie können auch die Simctl-Tool, um das zu tun.
Verwendung gemäß der Version 7.1.1 von simctl:
xcrun simctl help delete
Usage: simctl delete <device> [... <device n>] | unavailable
So kann ich entweder die einzelnen Geräte löschen:
xcrun simctl delete D24C18BC-268C-4F0B-9CD8-8EFFDE6619E3
oder ich kann alle nicht verfügbaren massenhaft löschen mit:
xcrun simctl delete unavailable
Sie müssen sich auch nicht nur auf nicht verfügbare Simulatoren beschränken.
Wenn Sie weitere Hilfe mit dem Tool benötigen, enthält es einen ziemlich einfachen Hilfebefehl:
xcrun simctl help
--
Spätere Versionen von Xcode haben die oben genannten Schritte weniger effektiv gemacht. Ich kenne nur Xcode 13.1 mit Sicherheit. Während das Löschen der Simulatoren immer noch Speicherplatz im ~/Library/Developer/CoreSimulator/Devices/
Ordner freigibt, hilft dies manchmal nicht, da die Dateien gerade verschoben wurden, um /var/folders
in einem Ordner namens zu leben Deleting-<guid>
, der ungefähr so viel Platz einnimmt wie das ursprüngliche Gerät. Dieser Speicherort erfordert jedoch Root-Rechte zum Aufräumen oder einen Neustart, was beides nicht wünschenswert ist. xcrun simctl delete
Aus einigen Tests eines Kollegen geht hervor, dass dies kein Problem darstellt, wenn Sie zuerst die Geräteordner und dann das Gerät über löschen.
Keine Kommentare:
Kommentar veröffentlichen