是否可以在debugging时查看iOS应用沙箱中的文件内容?
我想在Xcode中进行debugging时在特定的执行点检查XML文件的内容。 是否有可能通过组织者(我正在使用实际的硬件设备进行debugging,而不是模拟器)或通过在输出/控制台中input某种命令来查看文件的内容?
我正在使用Xcode 4。
只需打开pipe理器并单击底部的“下载”button,然后右键单击xcappdata文件并select“显示软件包内容”。
更新了Xcode 6的答案:
“设备”选项卡现在有它自己的窗口(窗口 – >设备)。 find你的设备,然后你的应用程序。 没有“下载”button(除非日志窗口是可见的…那么下载图标实际上保存日志)。
如果您双击您的应用程序,将会显示一个新窗口,显示该应用程序沙箱的只读,非交互式表示。
要下载应用程序容器,请select一个应用程序,然后单击“齿轮”和“下载容器”。 这需要一段时间,在此期间没有迹象表明进展; 但会出现一个Finder窗口,显示您的.xcappdata文件。 你也可以“更换容器”看起来很酷和令人兴奋。
我刚刚发现,您可以随时将沙盒的全部内容保存到磁盘中。 只需打开pipe理器,然后点击底部的“下载”button。 这将沙盒保存为一个.xcappdata文件的磁盘。 我不知道如何打开它,但我发现,如果您将文件扩展名更改为.xml,则可以使用finder浏览它,就像正常的目录一样。
如果需要的话,不能下载单个文件是一个耻辱,整个过程有点麻烦,但它确实使我能够达到我想要的结果。
您可以启用文件共享(在info.plist中设置UIFileSharingEnabled标志),并将文件存储在可通过iTunes访问的位置(即在Documents文件夹中)。
您始终可以设置断点,然后在控制台中使用“po”打印要检查的对象的内容。 例如:gdb> po [NSDictionary dictionaryWithContentsOfFile:filePath] ;.