Rythmbox 和 Banshee 都会发生这种情况,但我更愿意使用 Banshee 来解决这个问题,因为它更适合我。
当我运行 Banshee 并使用 PTP 连接我的 Android 设备时,它崩溃了,并且我可以在命令提示符下看到此错误:
(Banshee:13206): GLib-CRITICAL **: Source ID 882 was not found when attempting to remove it
(Banshee:13206): GLib-ERROR **: Creating pipes for GWakeup: Too many open files
Trace/breakpoint trap (core dumped)
如果我尝试通过 MTP 连接 Banshee,界面会持续冻结,这就是我使用 PTP 的原因。
我希望能够将我的音乐和播放列表与 Android 设备同步。现在还不能这样做吗?我尝试过 Clementine(无同步选项)、Amarok(无法连接)、Rhythmbox 和 Banshee。
请求的输出来自mtp-detect
:
$ mtp-detect
Unable to open ~/.mtpz-data for reading, MTPZ disabled.libmtp version: 1.1.6
Listing raw device(s)
Device 0 (VID=04e8 and PID=6860) is a Samsung Galaxy models (MTP).
Found 1 device(s):
Samsung: Galaxy models (MTP) (04e8:6860) @ bus 2, dev 7
Attempting to connect device(s)
ignoring libusb_claim_interface() = -6PTP_ERROR_IO: failed to open session, trying again after resetting USB interface
LIBMTP libusb: Attempt to reset device
答案1
安装所需的 mtp 工具 -
sudo apt-get install mtp-tools mtpfs
编辑以下文件 -
gksu gedit /etc/udev/rules.d/51-android.rules
在末尾添加以下内容并保存文件 -
SUBSYSTEM=="usb", ATTR{idVendor}=="VENDORID", ATTR{idProduct}=="PRODUCTID", MODE="0666"
在您的情况下 - VENDORID=04e8 和 PRODUCTID=6860。
现在,断开你的电话然后运行 -
sudo 服务 udev 重启
sudo mkdir /media/Galaxy
sudo chmod a + rwx /media/Galaxy
sudo adduser 你的用户名 fuse
编辑以下文件 -
gksu gedit /etc/fuse.conf
在末尾添加以下内容并保存文件 -
user_allow_other
现在,重启你的电脑然后运行 -
回显“别名 android-connect=\”mtpfs -o allow_other /media/Galaxy\”” >> ~/.bashrc
echo “别名 android-disconnect=\”fusermount -u /media/Galaxy\”” >> ~/.bashrc
源 ~/.bashrc
现在连接你的手机并运行 -android-connect
同样,要断开连接,请运行 -android-disconnect
这些措施已于这里。
如果这不起作用,你可以尝试go-mtpfs. 有教程可用这里。
最后,如果似乎没有什么效果,你可以看看AirDroid。您可以从Google Play 商店。
编辑 -
尝试从“开发者设置”中启用手机上的 USB 调试。它已为某些用户解决了该问题。
答案2
由于我没有您的具体电话,所以只能推测性地回答。
您正在使用 libmtp v1.1.6,它不是最新版本;Vivid 中可用版本 1.1.8。
您可以尝试使用新版本的 libmtp 来看看是否能解决您的问题 - 我的 PPA 就是其中一个来源:
sudo add-apt-repository ppa:fossfreedom/libmtp
sudo apt-get update
sudo apt-get upgrade
如果这对你不起作用,请使用 ppa-purge 回滚
sudo ppa-purge ppa:fossfreedom/libmtp