【发布时间】:2017-08-02 05:49:34
【问题描述】:
我想在做一些测试后分析我的 iPhone 应用程序中的数据,这些数据在 SQLite 数据库中。我有什么办法可以将它从 iPhone 复制回我的笔记本电脑?我不知道有任何机制允许我访问文件系统样式。
【问题讨论】:
标签: iphone
我想在做一些测试后分析我的 iPhone 应用程序中的数据,这些数据在 SQLite 数据库中。我有什么办法可以将它从 iPhone 复制回我的笔记本电脑?我不知道有任何机制允许我访问文件系统样式。
【问题讨论】:
标签: iphone
您无需在应用中打开文件共享即可获取此信息,您可以通过 Xcode 的设备窗口获取您构建的任何应用的数据。
在最新版本的 Xcode(我认为是 8 及更高版本)中,使用 Window 菜单打开它 --> Devices。在设备列表中找到该设备并查看该设备的已安装应用程序列表。将列出您在设备上构建和安装的每个应用程序(可能还有其他一些应用程序)。选择您的应用并单击列表下方的齿轮菜单。单击弹出菜单上的“下载”项,您可以将应用程序的文档、库和其他目录复制到您的 Mac。
注意:这将下载一个 .xcappdata 文件。右键单击它并选择“显示包内容”将允许您深入到实际的 sqlite 文件。
【讨论】:
在 Xcode 6 中,可在以下位置获得:
窗口 -> 设备 -> -> 已安装的应用程序。
选择您的应用程序。
点击齿轮图标 -> “下载容器”
【讨论】:
- + 右侧现在是一个带有三个点的圆圈。 xcode 13.2.1
您还可以使用 iExplorer(适用于 Windows 或 Mac,提供免费版本)浏览和复制 iphone 上的数据,而无需越狱。
【讨论】:
iExplorer 能够浏览/复制其他应用沙箱的数据吗?
如果这是您自己的应用程序,您可以在您的应用程序 plist 中启用Application supports iTunes file sharing (UIFileSharingEnabled),并且您的数据库存储在您应用程序的文档目录中,您将能够通过 iTunes 轻松访问您的数据库。
UIFileSharingEnabled(布尔值 - iOS) 指定应用程序是否 通过 iTunes 共享文件。如果这 关键是YES,应用程序共享 文件。如果它不存在或不存在, 该应用程序不共享文件。 应用程序必须将任何文件 想与用户分享他们的 /文件 目录,在哪里 应用程序主目录的路径 目录。
在 iTunes 中,用户可以访问 应用程序的共享文件从 应用程序选项卡的文件共享部分 对于选定的设备。由此 选项卡,用户可以添加和删除文件 从目录中。
iOS 3.2 和 稍后。
其他选项:
越狱您的手机,通过 Cydia 添加 afc2add,然后使用某种类型的 iPhone Explorer 应用程序。
越狱你的手机并安装ssh并使用诸如CyberDuck之类的工具。
这两个应用程序都有 Windows 替代方案。
【讨论】:
如果您的 iPhone 已越狱,您可以通过 SSH 访问它。像 WinSCP(在 Windows 上)这样的程序可以让您连接到手机并为您提供文件系统访问权限。然后您可以导航到您的应用程序存储数据库的位置。
还有多个文件系统应用程序可能允许您执行此操作,但如果您的手机没有越狱,我认为它们不会为您提供全部功能。
【讨论】:
您还可以使用 iMazing(适用于 Windows 或 Mac,提供免费版本)在 iphone、ipad 或 ipod 上浏览和复制数据
【讨论】: