it-swarm.cn

是否可以在调试时查看iOS应用程序沙箱中的文件内容?

我想在Xcode中调试时检查特定执行点的XML文件的内容。是否可以通过管理器(我使用实际的硬件设备而不是模拟器进行调试)或在输出/控制台中输入某种命令来查看文件的内容?

我正在使用Xcode 4。

61
Will Pragnell

只需打开组织器并单击底部的“下载”按钮,然后右键单击xcappdata文件并选择“显示包内容”。

120
pstoppani

更新了Xcode 6的答案:

Devices选项卡现在有自己的窗口(Window - > Devices)。找到您的设备,然后找到您的应用。没有“下载”按钮(除非日志窗口可见...然后下载图标实际上保存了日志)。

如果您点击应用程序,则会显示一个新窗口,其中显示该应用程序沙箱的只读非交互式表示。

要下载应用容器,请选择一个应用,单击“齿轮”和“下载容器”。这需要一段时间,在此期间没有迹象表明进展;但会出现一个Finder窗口,显示您的.xcappdata文件。你也可以“替换容器”看起来很酷和令人兴奋。

26
James Perih

我刚刚发现你可以随时将沙箱的全部内容保存到磁盘。只需打开组织器,然后单击底部的“下载”按钮。这会将沙箱作为.xcappdata文件保存到磁盘。我不确定如何打开它,但我发现如果你将文件扩展名更改为.xml,你可以像使用普通目录一样使用Finder浏览它。

很遗憾,如果需要你不能下载单个文件,整个过程有点麻烦,但它确实让我能够实现我想要的最终目标。

9
Will Pragnell

您可以启用文件共享(在info.plist中设置UIFileSharingEnabled标志)并将文件存储在可通过iTunes访问的位置(即在Documents文件夹中)。

8
SVD

您始终可以设置断点,然后在控制台中使用“po”打印要检查的对象的内容。示例:gdb> po [NSDictionary dictionaryWithContentsOfFile:filePath];。

3
Lio