在工作站上浏览我正在开发的iOS应用程序在设备上创建的文件?


126

我正在开发一个IOS应用,该应用可以在设备上创建文件,例如使用NSKeyedArchiver

在Android开发过程中,通过USB连接到工作站的设备文件系统是可以浏览的,例如,以帮助对应用程序进行故障排除。

但是对于IOS,我在Xcode的Organizer下看不到任何类似的东西,以帮助我浏览应用程序从工作站创建的文件。谷歌搜索“ iOO浏览设备文件”,“ iPhone查看文件”等揭示了针对越狱设备的解决方案,但没有针对为开发而配置的常规设备的解决方案。

如何在正在开发的iOS应用创建的设备上浏览文件?

Answers:


181

在Xcode的管理器中,转到设备的“摘要”标签。在列表中找到您的应用程序,然后单击显示三角形。在它下面,您应该看到一个图标,上面写着“应用程序数据”。单击向下箭头下载数据,它将提示您选择保存数据的位置。

在管理器中设备下方列出的Xcode 5中,单击“应用程序”,然后在窗口的下半部分看到“沙箱中的数据文件”。

在Xcode 6中,转到“ 窗口”->“设备”,选择设备,在“ 已安装的应用程序”下选择应用程序名称,单击设置齿轮箱,然后选择“ 下载容器...”。在取景器中,用手指点击包装,然后选择显示包装内容在此处输入图片说明


10
使用iPhone Simulator无需这样做,因为您可以浏览到<User> / Library / Application Support / iPhone Simulator来访问模拟器应用程序的内容。
香农

44
在xcode 6->窗口/设备/选择应用程序名称/点击设置齿轮箱/选择下载容器。在取景器中,双击手指,显示包装内物品。
tmr 2014年

1
我正在尝试访问由核心数据创建的.sqlite文件。但是从容器中下载的.sqlite没有任何值,但是,我可以在调试器中记录这些值。数据正在存储在数据库中,但下载的容器显示空数据库。
nr5

是否可以防止容器被下载?
弗洛里安·弗勒利希

如果删除该应用程序,内容是否会被删除?还是需要手动进行?
Famic Tech

109

在Xcode 6中,打开“ 设备”窗口:

第1步

然后,选择应用程序(在“已安装的应用程序”中),然后点击齿轮图标,然后选择下载容器

第2步


以及我们如何浏览/打开该文件?
奥利弗·迪克森

如下所述,@ OliverDixon,右键单击并选择“显示包装内容”
Yaman

40

请注意,您可以通过右键单击已下载的.xcappdata容器来查看其内容,然后选择“显示软件包内容”


4
记录在哪里?认真地说,我为此花了很长时间。
西蒙·科科斯

1
.xcappdata包只是一个文件夹,就像.xcodeproj只是一个文件夹一样。您可以cd从终端进入。
rstackhouse

11

在Xcode9中:/窗口/设备和模拟器

选择所需的已安装应用程序,单击底部的齿轮,然后下载容器...

在Finder中,右键单击下载的文件,然后显示“包内容”以在新的Finder窗口中将其打开。

我希望它有用。和平。


.xcappdata包只是一个文件夹,就像.xcodeproj只是一个文件夹一样。您可以从终端CD进入它。
rstackhouse

10

iExplorer就像一个魅力!刚刚用它来导出一些应用程序文件!http://www.macroplant.com/iexplorer/download-ie3-mac.php


iExplorer在这里发生了严重崩溃。也许您可以检查其他选项,例如SimPholders
Alan Andrade

似乎在iOS 10.3上不起作用-尝试打开应用程序文件夹时总是出现权限错误。
JustAMartin

有点让你想知道如何自己实现类似的东西……
Jonny

刚刚确认,iExplorer 4在Catalina和iOS 13下可以很好地从已安装的应用程序中提取文件。最大的好处是您不必使用XCode下载整个“容器”,只需选择所需的文件即可。
Greg Sadetsky

4

XCode版本:10.2.1

转到window->Devices and Simulators

在此处输入图片说明

然后从左侧列表中选择您的设备,然后从已安装的应用程序中选择该应用程序,因此您可以show container在xcode的新页面上按要求显示该应用程序中包含的内容,按此按钮download container将其下载到OSX,也可以将旧容器替换为瞬间状态Replace container...

在此处输入图片说明

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.