web-dev-qa-db-fra.com

Comment visualiser les données stockées dans Core Data?

Je crée un modèle Core Data pour mon application. Je voudrais pouvoir regarder à l'intérieur pour voir ce que j'ai stocké là-dedans.

Existe-t-il un moyen plus simple que de rechercher le magasin de sauvegarde (le mien devrait être SQLite) et de le lire à partir de là? Cela ne semble pas très semblable à Apple.

42
Frank

Une fois que votre application s'est exécutée dans le simulateur et a créé le fichier de magasin persistant, vous pouvez trouver le fichier dans le répertoire Documents de votre application.

Votre application sera dans votre dossier (~ est votre répertoire personnel):
~/Bibliothèque/Support d'application/iPhone Simulator/Utilisateur/Applications /

Je trie par "Date de modification" pour trouver l'application que je viens de créer.

Pour afficher un fichier SQLite, consultez Base et/ou Core Data Editor .

53
gerry3

Vous pouvez également utiliser l'outil complémentaire de FireFox SQLite Manager (GRATUIT). Je l'utilise et ça marche bien.

21
RoLYroLLs

Vous pouvez essayer un petit outil gratuit appelé CoreDataPro. Pas mal. ici

11
smileBot

Si vous utilisez iOS 10 et Swift mettez-le dans votre AppDelegate.Swift:

  let container = NSPersistentContainer(name: "***")
  print(container.persistentStoreDescriptions.first?.url)

Ensuite, vous verrez quelque chose comme ça:

Optional(file:///Users/<SomeUser>/Library/Developer/CoreSimulator/Devices/956F0003-5DA4-4588-97C1-A9A83767F341/data/Containers/Data/Application/9765FDE1-6971-4706-987B-96FBD3F462BF/Library/Application%20Support/***.sqlite)
11
Lyanch

Mise à jour de ce fil, l'emplacement du simulateur d'iphone a été déplacé vers un emplacement différent dans Xcode7 et Xcode8. Il est maintenant dans:

~/Bibliothèque/Développeur/CoreSimulator/...

où ~ est votre répertoire personnel.

L'une des solutions précédentes fonctionnera toujours, mais vous ne pourrez pas trouver le bon dossier si vous utilisez les liens précédents.

5
Diesel
5
barfoon

Essayez également le navigateur de base de données sqlite. son libre et reflète ce fait. très utile cependant!

cheers.bo

2
roberthuttinger

J'ai créé une application macOS pour parcourir votre contenu Core Data. Il masque l'implémentation de Core Data comme vous le voyez lorsque vous utilisez un navigateur SQLite. Vous pouvez également répertorier toutes vos dernières applications et simulateurs d'exécution, avec cela, vous pouvez facilement trouver l'application que vous recherchez. Plus d'infos ici:

http://www.microedition.biz/simMagnifier

Il possède d'autres fonctionnalités telles que l'accès aux dossiers de Simulator tels que Documents, Support d'application, etc. Vous pouvez également vérifier le contenu de NSUserDefaults.

L'application n'est pas gratuite désolée! mais au moins vous avez un essai de 7 jours.

1
Pablo Romero

3 étapes faciles

  1. installez l'application liya, gratuite, taille 3,1 Mo, installe donc en 1 minute.
    Lien https://iTunes.Apple.com/us/app/liya/id455484422?mt=12 .

  2. Ouvrez le Finder, appuyez sur "Ctrl + G" OR "CMD + Ctrl + G", collez ~/Library/Developer/
    Dans le dossier développeur, recherchez le nom de votre modèle Core Data (eg. MyProjectModel).

  3. Ouvert MyProjectModel.d fichier Ou 'MyProjectModel.sqlite' en utilisant liya. Dans liya, sélectionnez une table, cliquez sur "Exécuter la commande SQL".

Terminé.

1
nikdange_me

Voici le chemin complet, apparemment il a changé depuis la réponse de gerry3

~/Library/Application Support/iPhone Simulator/<Simulator>/Applications/<ApplicationID>/Documents/<NAME>.sqlite

Donc, un chemin correct voudrait ceci:

~/Library/Application Support/iPhone Simulator/7.1-64/Applications/C1F3C2E5-987A-4DF7-91EF-955AE6E52621/Documents/TestApp.sqlite
1
hashier