有办法访问真实设备(iphone/ipad)的文件夹吗?我意识到一个应用程序可以在该文件夹中存储一些数据,我想检查一切是否正确。
7 回答
您可以在没有 iTunes 的情况下执行此操作,即使该文件位于沙箱中除 Documents 之外的其他位置。
转到 Xcode 中的窗口/设备。
接下来,选择您的设备,然后在列表中找到该应用程序。
请参阅列表中的“下载容器...”。猜猜这是做什么的?你说对了。它会下载整个沙盒以及应用程序沙盒中的所有文件夹。右键单击并“显示包内容”。
这应该让您看到尚未发布的应用程序的沙盒。因此,非常适合在真实设备上进行测试。
如果您在模拟器上进行测试,生活会容易得多。只需在此处下载免费应用程序 OpenSim 。更新:这些天我更喜欢 SimSim,这里也是免费的。
对于任何寻找确切答案的人:-
1.转到项目的 plist 文件。
2.添加一行。
3.然后将属性“应用程序支持iTunes文件共享”的布尔值设置为“是”。(键名是UIFileSharingEnabled
)
你很高兴。
另请注意,您必须插入设备才能访问复制的文件(以编程方式)。如果您碰巧去尝试在计算机上访问它..您将无法找到文件。
你的问题有点不清楚,但我可以看到三种解释:
您可以将 iPhone 插入 iTunes 以查看启用了 iTunesFileSharing 的任何应用程序的文档文件夹,包括您已编写或正在编写的任何应用程序。
如果这是您自己的应用程序,并且您需要帮助从文档文件夹中读取文件,请查看此问题。
如果这是其他人的应用程序,并且您想在没有 iTunes 的情况下访问该应用程序的文档文件夹,并且该应用程序没有您想要的实现,那么恐怕某种越狱和黑客攻击是必要的。
您可以使用以下代码从代码访问文档目录:
+ (NSString *) applicationDocumentsDirectory {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *basePath = ([paths count] > 0) ? [paths objectAtIndex:0] : nil;
return basePath;
}
然后您可以转到终端以获取相同的路径并检查所有文件。
例如在我的系统上是这样的:
~/Library/Developer/CoreSimulator/Devices/<deviceID>
如果您正在寻找将文件从 iOS 应用程序文件夹导入 Mac 的工具,请安装 Apple configurator 2 ( https://apps.apple.com/us/app/apple-configurator-2/id1037126344?mt=12 )
将您的设备连接到 Mac 并在 Apple 配置器中按照以下步骤操作
双击设备
选择操作 > 导出 > 文档。
选择要导出的应用程序内的文件,然后单击选择。将项目保存到 Mac 中的所需位置。
如果您有物理设备,您可以在 info.plist 中添加 UIFileSharingEnabled 键并将其值设置为 YES
然后运行你的应用
打开 iTunes 选择设备并转到文件共享并选择您的应用
您将看到由您的应用创建的文件