访问iOS文件系统没有越狱?
我想编写/使用可以访问iOS文件系统的开源脚本(非越狱)。 在Jailbroken设备上,我使用ssh
/ scp
来访问, 从设备传输数据 。 意图是使用一些脚本将iOS文件系统的某些部分(例如/var/mobile/Applications/xxx-xxxx/Documents
)从非Jailbroken设备复制到Mac。 我看到像iFunBox这样的工具能够做到。 想知道它设法这样做。
我遇到了mobiledevice.h,但无法真正理解如何使用它。
此外,更喜欢通过USB完成此操作…对于越狱设备,我使用tcprelay.py进行usb隧道 。 我可以用于非越狱设备吗?
MobileDeviceManager库为我们带来了简单的文件系统操作(它是一个易于使用的Objective-C包装器,围绕您遇到的MobileDevice框架)。
问题是它不支持将文件从设备复制到计算机,只是反过来。 因此,为了解决这个问题,我创建了一个补丁( GitHub gist ),您可以将其合并到包含的示例程序中,以使其了解copyFrom
命令。
您可以安装ifuse工具,该工具位于此处: https : //github.com/libimobiledevice/ifuse
为了编译这个工具,你需要一套工作的Gnu工具(make,libtool等)。
#Don't worry - clang is still default sudo port install gcc48
注意:更新.bash_profile(或类似)以包含以下内容:
#Important - this is where your compiled libs will get installed to, so we need this export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig/**
此过程的其余部分应该需要几分钟
安装fuse4x
sudo port install fuse4x
构建依赖项:
查看: https : //github.com/libimobiledevice/libplist ,进入结帐,然后运行:
./autogen.sh ./configure make sudo make install
查看: https : //github.com/libimobiledevice/libusbmuxd,cd进入结账,然后运行:
./autogen.sh ./configure make sudo make install
查看: https : //github.com/libimobiledevice/libimobiledevice,cd进入结账,然后运行:
./autogen.sh ./configure make sudo make install
(如果你在Linux上,你还需要在构建libusbmuxd和libimobiledevice之后安装usbmuxd。否则,对于Windows和OSX ……)
现在建立iFuse:
退房: https : //github.com/libimobiledevice/ifuse
./autogen.sh ./configure make sudo make install
要使用ifuse访问应用程序的文档目录:
制作一个挂载目录:
sudo mkdir -p /Volumes/myapp.app
现在挂载应用程序的目录:
ifuse --container /Volumes/abced.app
其中app id是包标识符中显示的名称。 。 例:
ifuse --container mycompany.ABCED.com /Volumes/abced.app/
(参见附图)