我已经在Ubuntu 14.04上使用Rhythmbox播放iPhone上的音乐已有一段时间了。有时,我会遇到烦人的“初始化iPhone”对话框,但是我只是取消了它,卸载并重新连接手机,问题就解决了。
背景:让事情与iOS 10一起使用
最近,我更新到iOS 10,并且挂载iPhone停止工作。我通过克隆libplist,libimobiledevice,libusbmuxd,usbmuxd和ifuse [注意:ifuse如果使用gvfs,似乎没有必要],master在每个存储库中检出分支并通过安装来解决此问题。
./autogen.sh
make
sudo checkinstall
以便可以通过来管理软件包的版本和依赖项dpkg。
因为libimobiledevice我也这样做了,./autogen.sh --disable-openssl所以我会改用GnuTLS。
因为我原本通过安装这些包的大部分apt-get,我安装libplist的dpkg包libplist1,libimobiledevice如libimobiledevice4,和libusbmuxd作为libusbmuxd2。echo /usr/local/lib > /etc/ld.so.conf.d/libimobiledevice-libs.conf当程序抱怨/usr/lib/libimobiledevice.so.4缺少此类链接时,我也做了一些额外的符号链接。
使gvfs工作
ifuse现在可以成功安装iPhone,但我的实际目标是gvfs检测并安装手机,使其能够与Rhythmbox一起使用。我可能需要做一些额外的符号链接gvfs才能运行相关程序。
如果此时我天真地尝试插入手机,我(很有可能)会收到错误消息Message did not receive a reply (timeout by message bus)。我必须运行/usr/lib/gvfs-gvfs-afc-volume-monitor3次以上,直到足够幸运的时候才能安装手机。这似乎是非常错误的。
向sudo usbmuxd -f -v我发送垃圾邮件,例如
New client on fd 19
Client 19 connection closed
Disconnecting client fd 19
一遍又一遍,再加上一个实例Receive from client fd 19 failed: Connection reset by peer和Connection reset by device 4 (3->62078)。基本上,我不知道为什么安装只能间歇性地进行。当我使用时usbmuxd在前台运行时,事情似乎更常运行-f,但这可能只是确认偏差。
当我终于做到拿到手机安装,Rhythmbox的将启动并显示“初始化你的iPhone”对话框中,有两个问题:(1)它挂了很长的时间,同时加载该对话框(试图用手机,可能的话,或连接也许Rhythmbox太慢了?)和(2)如果我单击“取消”,我将再也看不到安装在Rhythmbox上的电话。之前,取消一次之后,我可以卸载并重新连接手机,对话框将不再弹出,但是这种方法的可靠性远不如此,因为我无法可靠地安装手机!所以毕竟...
问题
- 我应该从源头着手进行安装吗?
- 如何
gvfs在第一次尝试时可靠地安装手机? - 我应该停止使用
gvfs/rhythmbox并开始使用ifuse+其他功能吗?