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

Wil*_*ell 61 debugging xcode logging ios xcode4

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

我正在使用Xcode 4.

pst*_*ani 120

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

  • 谢谢你.只是为了澄清一下这个过程 - 在连接设备的情况下打开XCode组织器,选择Devices选项卡,打开设备下的小下拉按钮,选择Applications,选择要检查沙箱的App,然后选择你得到了下载按钮. (14认同)
  • 对我来说,这个方法似乎忽略了Documents目录,这就是我需要的. (3认同)

Jam*_*rih 26

更新了Xcode 6的答案:

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

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

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

  • 对于那些不熟悉的人,如何打开文件.它是一个容器,因此在Finder中,您必须左键单击该文件并选择"显示包内容".然后,您可以像已有的任何其他文件夹一样浏览. (2认同)

Wil*_*ell 9

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

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

  • .xcappdata下载不是文件 - 它是整个沙箱目录(至少是数据部分)!只需看看内部 - 终端是一个很好的方法,类似于查看其组件中的.app.没有必要更改扩展名,但如果你完全取消扩展名,你可能会帮助Finder对"文件"的"类型"产生混淆.该目录甚至包含一个AppDataInfo.plist文件,它是一个二进制格式的plist,可以显示存在的内容. (4认同)
  • 要在Finder中查看其内容,请右键单击并选择"显示包内容" (3认同)

SVD*_*SVD 8

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