Gibt es eine schnellere / bessere Möglichkeit, den iPhone Simulator-Cache zu löschen, als sein Verzeichnis zu löschen?

96

Daher bin ich noch ziemlich neu in der iOS-Entwicklung und muss regelmäßig entweder DerivedData oder den Inhalt des iPhone Simulator-Verzeichnisses löschen, damit die Dinge tatsächlich aus meinem Code ausgeführt werden. Clean in Xcode ist nicht dasselbe wie das Leeren dieser Verzeichnisse, oder? Und wenn nicht, gibt es einen einfacheren Weg, als Finder herumzuschleppen, um zu ihnen zu gelangen und sie zu löschen?

Luke
quelle
Vor 3 Jahren war dies vielleicht keine Option, aber überprüfen Sie meine Antwort, es funktioniert für mich!
Adrian Florescu

Antworten:

123

66:99 und Klettern:

Ja , es gibt einen besseren Weg, als in jeden einzelnen Simulator in der Stadt zu gehen und Inhalte und Einstellungen einzeln zurückzusetzen. Auch viel besser, als in das Verzeichnis Ihres Simulators zu schauen und den Cache unter seinen Füßen hervorzuziehen.

Beenden Sie den iPhone Simulator und führen Sie ihn xcrunim Terminal aus:

xcrun simctl erase all

Sicher und effektiv.

Informationen zu einzelnen Geräten finden Sie unter https://stackoverflow.com/a/26394597/218152

xcrun simctl erase [Geräte-ID]

SwiftArchitect
quelle
Löscht dies jedoch die Simulatoren selbst? Damit ich sie anschließend erneut im Bildschirm "Geräte" von Xcode hinzufügen muss?
Luke
1
Nur der Inhalt. Löschen Sie in der Dokumentation ( xcrun simctl help) : Löschen Sie den Inhalt und die Einstellungen eines Geräts. , nicht zu verwechseln mit Löschen : Löschen Sie ein Gerät oder alle nicht verfügbaren Geräte.
SwiftArchitect
Genial. Ich bin versucht, meine richtige Antwort vor diesem Hintergrund
Luke
@lukech: Sehr geschätzt. Ich bin auf diese Lösung gestoßen, als ich versucht habe, Speicher auf meiner Festplatte zu speichern, und habe nach einem clean build folderAnsatz gesucht . Und wir bitten Sie, diese Frage aktiv zu halten.
SwiftArchitect
Die Ausführung dieses Befehls dauert ewig. Wie wähle ich eine Zielsimulation mit uuid aus?
the_prole
104

Im iOS Simulator- Menü gibt es eine Option namens Zurücksetzen von Inhalten und Einstellungen ...

Dies sollte den Trick tun.

BEARBEITEN:

Um dies viel schneller und einfacher zu machen, habe ich eine Tastenkombination wie diese hinzugefügt ...

Wählen Sie in den Systemeinstellungen Tastatur

Tastatursystemeinstellungen

Wählen Sie dann die Registerkarte Verknüpfungen . Und klicken Sie auf App-Verknüpfungen

App-Verknüpfungen Klicken Sie auf das Pluszeichen, um eine weitere Verknüpfung hinzuzufügen.

Geben Sie hier die Bildbeschreibung ein Zuletzt:

  1. Klicken Sie in der Dropdown- Liste Anwendung: auf Simulator auswählen . Wenn es nicht vorhanden ist, scrollen Sie zum Ende der Anwendungsliste und wählen Sie "Andere ...". Geben Sie dann "Simulator" in die Suche ein und fügen Sie den Simulator von dort hinzu.
  2. Geben Sie Erase Alle Inhalte und Einstellungen ... in die Menü - Titel: Text-Box.
  3. Geben Sie Ihre bevorzugte Tastenkombination in die Tastenkombination ein : . (Ich benutze die Befehlsperiode)
  4. Klicken Sie auf die Schaltfläche Hinzufügen .

Geben Sie hier die Bildbeschreibung ein

Jetzt können Sie in Ihrem iOS-Simulator einfach Ihre neue Tastenkombination zum Zurücksetzen verwenden.


Wenn der Simulator nicht in der Dropdown-Liste angezeigt wird:

  1. Wechseln Sie in einem Finder-Fenster zu Ihrem Anwendungsordner.
  2. Klicken Sie mit der rechten Maustaste auf Xcode und wählen Sie "Paketinhalt anzeigen".
  3. Navigieren Sie zu Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/
  4. Sie sehen iPhone Simulator.app.
  5. Anstatt in der App "Einstellungen" den fehlenden iOS-Simulator auszuwählen, wählen Sie "Andere".
  6. Dadurch wird ein Fenster mit einer Liste von Anwendungen angezeigt.
  7. Ziehen Sie nun iPhone Simulator.app aus Ihrem Finder-Fenster in das Fenster, das angezeigt wurde, als Sie auf Andere geklickt haben.
Jeff Wolski
quelle
Der iOS-Simulator wird nicht mehr in der Dropdown-Liste Anwendung angezeigt. Soll ich einfach "xCode.app" wählen? Ich bin auf OS 10.8.3 mit iOS Simulator 6.0.
Potench
8
Wechseln Sie in einem Finder-Fenster zu Ihrem Anwendungsordner. Klicken Sie bei gedrückter Wahltaste auf Xcode und wählen Sie "Paketinhalt anzeigen". Navigieren Sie zum Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/Ordner. Du wirst sehen iPhone Simulator.app. Jetzt iOS Simulatorwählen Sie in der App Einstellungen die Option aus, welche fehlt Other.... Dadurch wird ein Fenster mit einer Liste von Anwendungen angezeigt. Ziehen Sie nun iPhone Simulator.appvon Ihrem Finder-Fenster in das Fenster, das beim Klicken angezeigt wurde Other....
Jeff Wolski
1
Ich bin hierher gekommen, um etwas anderes zu suchen, habe aber Ihre Schritte durchlaufen, nur weil Ihre Antwort so gut war. Vielen Dank!
Kodybrown
1
Reset Content and Settingslöscht keine clientseitigen Assets in einem VPN. Ich hatte eine Weile Probleme damit, mich zu fragen, warum meine CSS-Animationen überall außer im Simulator funktionierten, nur um herauszufinden, dass alte Dateien zwischengespeichert wurden, selbst wenn ich Inhalte und Einstellungen gelöscht hatte. Das einzige, was für mich funktioniert hat, war, die Verbindung zu meinem VPN zu trennen und meine VM neu zu starten und dann wieder eine Verbindung herzustellen (das Framework, für das ich alle meine Assets für mich verwende). Sie können sie auch manuell versionieren, wenn Sie nur Dinge testen, aber das ist ärgerlich. Dies sollte Apple beheben. Es passiert nur beim Testen auf iOS für mich.
Benny
3
Wenn Sie den Simulator nicht auf dem Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications/von @JeffWolski angegebenen Pfad finden können, können Sie ihn anhand des Suchbegriffs suchensimulator.app
atulkhatri
8

Für die Webentwicklung und das Testen auf dem iOS Simulator (Safari):

  1. Gehen Sie bei geöffnetem iOS Simulator und Safari zu Safari> Entwickeln> iOS Simulator und wählen Sie Ihre Seite aus, über die Sie auf die Web Inspector-Tools zugreifen können.

  2. Gehen Sie zu Safari> Entwickeln> Leere Caches, um den Cache unter iOS Safari zu löschen.

Adrian Florescu
quelle
@AdrianFlorescu Dies ist eine Lösung zum Debuggen der Webentwicklung unter iOS Safari, aber ich denke, die Frage betraf die Entwicklung von iOS-Apps.
Ryan
4
Funktioniert nicht unter Safari 9.0.3 mit Remote-Debugger. "Caches deaktivieren" hat ebenfalls keine Auswirkung.
Gamadril
1
Diese Einstellung tut nichts für mich (
löscht den
Ja. Sieht so aus, als würde der iOS-Cache nicht mehr bereinigt. Ich denke, es war in der Vergangenheit ...
Yosh
Dies ist die einzige Lösung, die zu funktionieren scheint stackoverflow.com/a/51421939/1055015
Exlord