Ich habe eine SQLite-Datenbank, in der ich App-Daten speichere, und ich könnte einen Blick darauf werfen, um ein Problem zu beheben, das ich habe - aber wo speichert der iPhone Simulator normalerweise seine Daten?
quelle
Ich habe eine SQLite-Datenbank, in der ich App-Daten speichere, und ich könnte einen Blick darauf werfen, um ein Problem zu beheben, das ich habe - aber wo speichert der iPhone Simulator normalerweise seine Daten?
Die akzeptierte Antwort ist für SDK 3.2 korrekt. - SDK 4 ersetzt den Ordner / User in diesem Pfad durch eine Nummer für jede der älteren iPhone OS / iOS-Versionen, die simuliert werden können. Der Pfad lautet also:
~ / Bibliothek / Anwendungsunterstützung / iPhone Simulator / [Betriebssystemversion] / Anwendungen / [AppGUID] /
Wenn Sie das vorherige SDK nebenan installiert haben, speichert der 3.1.x-Simulator die Daten weiterhin in:
~ / Bibliothek / Anwendungsunterstützung / iPhone Simulator / Benutzer / Anwendungen / [appGUID] /
Für Xcode6 und iOS8
~ / Bibliothek / Entwickler / CoreSimulator / Geräte / [Geräte-ID] / Daten / Container / Daten / Anwendung / [AppID] /
cd ~/Library/Application\ Support/iPhone\ Simulator/
po NSHomeDirectory()
den Debugger ein. Ausschneiden und Einfügen in Gehe zu> Gehe zu Ordner (Cmd-Shift-G).NSLog
dies in IhremAppDelegate
‚sdidFinishLaunchingWithOptions:
, oder Sie könnenpo NSHomeDirectory()
aus dem Debugger. Kopieren Sie in beiden Fällen die Zeichenfolge und öffnen Sie sie im Finder mitCmd+Shift+G
. Dies funktioniert besser, weil Sie mit einem Standardbefehl fragen, anstatt etwas wissen zu müssen, das sich ändert.Es gibt eine andere (schnellere?) Möglichkeit, herauszufinden, wo sich Ihre App-Daten ohne Terminal befinden:
quelle
NSString *uniqueIdentifier = [[[UIDevice currentDevice] identifierForVendor] UUIDString];
gibt Ihnen die GerätekennungFand es:
quelle
iOS 8 ~ / Bibliothek / Entwickler / CoreSimulator / Geräte / [Geräte-ID] / Daten / Anwendungen / [AppGUID] / Dokumente /
quelle
xcrun instruments -s
Auf Lion
Users/[username]/Library
ist das versteckt.Um einfach im Finder anzuzeigen, klicken Sie oben auf dem Bildschirm auf das Menü "Los" und halten Sie die Alt-Taste gedrückt, um "Bibliothek" anzuzeigen.
Klicken Sie auf "Bibliothek" und Sie können Ihren zuvor ausgeblendeten Bibliotheksordner sehen.
Zuvor empfohlen:
Verwenden
in einem Terminal, um den Ordner anzuzeigen.
quelle
Der einfachste Weg überhaupt.
Fangen Sie irgendwo einen Haltepunkt.
Geben Sie
po NSHomeDirectory()
in KonsolenfensterErgebnis:
quelle
Wenn der Simulator ausgeführt wird, können Sie den Pfad zum Container einer beliebigen App abrufen:
Beispielausgabe:
"gebootet" kann durch die meisten ersetzt werden
simctl
Befehle überall dort eingesetzt werden, wo eine Geräte-UDID erwartet wird.Sie können die Liste der Geräte mit anzeigen
xcrun simctl list
und Hilfe zu bestimmten Befehlen mit erhaltenxcrun simctl help
.Aktualisieren : Auf vielfachen Wunsch in Xcode 8.3 können Sie jetzt die Art des gewünschten Containers angeben, indem Sie "App", "Daten", "Gruppen" oder eine App-Gruppen-ID anhängen.
So erhalten Sie den Datencontainer:
quelle
Mit Xcode 5 können Sie den folgenden Code verwenden:
und:
Das Ergebnis könnte folgendermaßen aussehen:
Wo
hhhhhhhh-hhhh-hhhh-hhhh-hhhhhhhhhhhh
ist eine Hex-Zeichenfolge, die Ihre iOS-App identifiziert?quelle
po NSHomeDirectory()
Anscheinend hat Xcode 6.0 diesen Speicherort erneut verschoben, zumindest für iOS 8-Simulatoren.
quelle
Eine der einfachsten Möglichkeiten, um herauszufinden, wo sich die App im Simulator befindet. Benutzer "NSTemporaryDirectory ()"
Schritte-
Wenn die App am Haltepunkt stoppt, geben Sie den folgenden Befehl in die Xcode-Konsole ein.
po NSTemporaryDirectory ()
Siehe das folgende Bild für einen richtigen Einblick
Jetzt haben Sie den genauen Pfad zum temporären Ordner. Sie können zurückgehen und alle App-bezogenen Ordner anzeigen.
Hoffe das hilft auch. Viel Spaß beim Codieren :)
quelle
po NSHomeDirectory()
?Wo Xcode ab 2019 Simulatoren speichert Catalina, Xcode 11.0
Laufzeit
$ open /Library/Developer/CoreSimulator/Profiles/Runtimes
Zum Beispiel:
iOS 13.0
,watchOS 6.0
nehmen diese den meisten Platz, bei weitem. Jeder kann bis zu ~ 5 GB groß seinGeräte
$ open ~/Library/Developer/CoreSimulator/Devices
Zum Beispiel:
iPhone Xr
,iPhone 11 Pro Max
. Diese sind typischerweise jeweils <15 MB.Erläuterung
Simulatoren werden zwischen Laufzeiten und Geräten aufgeteilt. Wenn Sie ausführen
$ xcrun simctl list
, sehen Sie eine Übersicht. Wenn Sie jedoch den physischen Standort dieser Simulatoren ermitteln möchten, schauen Sie in die von mir gezeigten Verzeichnisse.Es ist absolut sicher, nicht unterstützte Laufzeiten zu löschen. Sie können diese später neu installieren, wenn Sie möchten.
quelle
Mach das einfach:
Und Sie werden so etwas bekommen:
Wenn Sie dorthin gehen, wird der Dokumentordner Ihrer App unabhängig von der Version von XCode angezeigt. (Verwenden Sie den Befehl "Gehe zu Ordner ..." im Finder und geben Sie einen Pfad "~ / library" an.)
Schnelle Version für String-Pfad:
und Ordner-URL:
quelle
In iOS 5:
/ Benutzer / [Benutzername] / Bibliothek / Anwendungsunterstützung / iPhone Simulator / 5.0 / Anwendungen / [AppGUID] /
quelle
Für Xcode 4.6 wird es im folgenden Pfad gespeichert ...
/ Benutzer / [aktueller Benutzer] / Bibliothek / Anwendungsunterstützung / iPhone Simulator / 6.1 / Anwendungen /
Um es programmgesteuert zu kennen, verwenden Sie den folgenden Code
quelle
print("path: \(NSBundle.mainBundle().bundlePath)")
Für iOS 8
Um den Ordner " Dokumente" zu suchen, können Sie eine Datei in den Ordner "Dokumente" schreiben:
sagen, in
didFinishLaunchingWithOptions
.Dann können Sie ein Terminal öffnen und den Ordner suchen:
quelle
Wenn bei lion dieses Problem immer noch auftritt, gibt es einen großartigen Artikel mit 19 verschiedenen Tipps zum Anzeigen Ihres ~ / Library-Verzeichnisses. Den Artikel von Dan Frakes finden Sie hier http://www.macworld.com/article/161156/2011/07/view_library_folder_in_lion.html
Denken Sie daran, dass das Verzeichnis zum Simulator unten angegeben ist
~ / Bibliothek / Anwendungsunterstützung / iPhone Simulator / Benutzer /
quelle
Für macOS Catalina habe ich meine Datenbank gefunden in:
Um das zu bekommen
applicationId
, habe ich die Ordner nur nach dem Änderungsdatum sortiert, obwohl ich sicher bin, dass es einen besseren Weg gibt, dies zu tun.quelle
Für reaktionsnative Benutzer, die Xcode nicht oft verwenden, können Sie einfach verwenden
find
. Öffnen Sie ein Terminal und suchen Sie nach dem Datenbanknamen.$ find ~/Library/Developer -name 'myname.db'
Wenn Sie den genauen Namen nicht kennen, können Sie Platzhalter verwenden:
$ find ~/Library/Developer -name 'myname.*'
quelle
Sie können versuchen, den folgenden Code zu verwenden
quelle
Gehen Sie wie folgt vor, um die Diktaturen zu öffnen, in denen sich Ihre App befindet und die Sie in xCode auf den Simulatoren erstellen:
quelle
Ich bin nicht mit diesem Programm verbunden, aber wenn Sie etwas davon im Finder SimPholders öffnen möchten, ist dies unglaublich einfach.
quelle