2

libimobiledevice 声称是一个用于与 iOS 设备通信的跨平台库。在 Linux 上,它可能需要其他一些软件包才能工作,但它不需要 Apple 提供的任何软件(Linux 几乎不存在)。但是,Windows 上的任何形式的它都不能在没有 iTunes 的情况下工作(或者更具体地说,是通过 iTunes 获得的 Apple 设备驱动程序和 Apple 应用程序支持)。如果这个库真的是跨平台的,那么与 Linux 相比,Windows 缺少什么使得没有 iTunes 就无法运行?

作为一个附带问题,我只想挂载 iDevice 文件系统的主要部分和文档部分,所以如果有简单的方法,请告诉我。

4

1 回答 1

6

libimobiledevice 不依赖于 iTunes,而是依赖于 Apple 设备驱动程序和 Apple 应用程序支持服务,如您所指出的。

libimobiledevice 以开源 usbmuxd 库的形式具有与 Apple 设备驱动程序和 Apple 应用程序支持组件等效的组件。

但是,usbmuxd 使用 libusb 与 USB 设备进行交互。libusb 对 Linux 和 macOS 有很好的支持,但在 Windows 上缺少一些功能。特别是,您不能使用 libusb 为 Windows 设备设置设备配置,并且它需要与 iOS 设备一起使用。

有些公司在商业基础上支持在没有任何 Apple 软件的情况下连接到 Windows 上的 iOS 设备。我工作的公司 Quamotion 就是其中之一。因此,如果您想了解更多信息,可以与我们联系。然而,在大多数情况下,这样做几乎没有什么好处:Apple 软件稳定且经过良好测试,因此使用 3rd 方库的动机很小。

如果您正在寻找的是在 Windows 上访问部分 iOS 文件系统,则无需担心删除 iTunes。您可以连接到 iOS 设备上运行的 AFC 服务以与 Apple 文件系统进行交互。libimobiledevice 提供了一个 API(但不是可以在 Windows 上使用的命令行程序);libimobiledevice 有各种编程语言的绑定。

于 2018-03-06T10:40:46.817 回答