web-dev-qa-db-fra.com

Est-il possible d'afficher le contenu des fichiers dans le sandbox de l'application iOS pendant le débogage?

Je voudrais vérifier le contenu d'un fichier XML à un point d'exécution spécifique lors du débogage dans Xcode. Est-il possible d'afficher le contenu du fichier, soit via l'Organiseur (je débogue en utilisant des périphériques matériels réels, pas le simulateur), ou en tapant une sorte de commande dans la sortie/console?

J'utilise Xcode 4.

61
Will Pragnell

Ouvrez simplement l'organiseur et cliquez sur le bouton "Télécharger" en bas, puis cliquez avec le bouton droit sur le fichier xcappdata et sélectionnez Afficher le contenu du package.

120
pstoppani

Réponse mise à jour pour Xcode 6:

L'onglet Périphériques possède désormais sa propre fenêtre (Fenêtre -> Périphériques). Trouvez votre appareil, puis votre application. Il n'y a pas de bouton "télécharger" (à moins que la fenêtre du journal ne soit visible ... alors l'icône de téléchargement enregistre le journal).

Si vous double-cliquez sur votre application, une nouvelle fenêtre apparaîtra qui affiche une représentation en lecture seule et non interactive du bac à sable de cette application.

Pour télécharger le conteneur d'applications, sélectionnez une application, cliquez sur "Gear" et "Télécharger le conteneur". Cela prendra un peu de temps, pendant lequel il n'y a aucune indication de progrès; mais une fenêtre du Finder apparaîtra avec votre fichier .xcappdata. Vous pouvez également "Remplacer le conteneur" qui a l'air cool et excitant.

26
James Perih

Je viens de découvrir que vous pouvez à tout moment sauvegarder l'intégralité du contenu du bac à sable sur le disque. Ouvrez simplement l'organisateur et cliquez sur le bouton "Télécharger" en bas. Cela enregistre le sandbox sur le disque en tant que fichier .xcappdata. Je ne sais pas comment l'ouvrir tel quel, mais j'ai constaté que si vous changez l'extension de fichier en .xml, vous pouvez la parcourir à l'aide du Finder comme un répertoire normal.

C'est dommage que vous ne puissiez pas télécharger des fichiers uniques si nécessaire et que l'ensemble du processus soit un peu lourd, mais cela me permet de réaliser ce que je voulais au final.

9
Will Pragnell

Vous pouvez activer le partage de fichiers (définir l'indicateur UIFileSharingEnabled dans info.plist) et stocker le fichier où il est accessible via iTunes (c'est-à-dire dans le dossier Documents).

8
SVD

Vous pouvez toujours définir un point d'arrêt puis, dans la console, imprimer le contenu de l'objet que vous souhaitez examiner à l'aide de 'po'. Exemple: gdb> po [NSDictionary dictionaryWithContentsOfFile: filePath] ;.

3
Lio