三天来我一直在为这个问题而苦恼。lsusb
没有检测到我的 ASUS Fonepad 7,但检测到了我的 Lumia,它是一款 Windows Phone 设备。我尝试插入我姐姐的手机和我爸爸的手机,它们都是 Android Marshmallow 设备,但从未检测到 Android。我在互联网上找到的每个解决方案都是基于文件51-android.rules
或在设备本身上启用 MTP。然而,这在我的计算机上仍然不起作用。我有文件.rules
,并且在我的 ASUS Fonepad 7 上启用了 MTP。但是,当我运行时lsusb
,没有检测到 Android 设备,这也影响了adb devices
的结果。任何帮助都值得感激!
编辑:我正在使用基于 Ubuntu 14.04 LTS 的 ElementaryOS Freya。
答案1
有类似的问题
Android 智能手机:华为 Honor 7S;操作系统:Android 8.1.0;调试:已激活 USB 调试;网络:已激活 MTP)
在:
Linux fedora 6.7.10-100.fc38.x86_64 #1 SMP PREEMPT_DYNAMIC 星期一 3 月 18 日 18:51:12 UTC 2024 x86_64 GNU/Linux
和您一样,许多论坛网站都写到了缺少 udev 规则。无法识别智能手机:
sudo adb devices
首先,您可以尝试检查硬件组件,例如:
- 尝试笔记本电脑上不同的 USB 端口
- 清洁 fonetab、手机、笔记本电脑的 USB 连接器(例如使用气压罐、棉签……)
- 检查正确的电缆类型(数据线往往比细的充电线更大)
否则尝试发布更多信息通过发布您的系统日志,例如:
sudo apt-get install lshw
然后将其保存到 sysinfo 文件中,例如:
sudo lshw -html > sysinfo.txt
并将其发布在这里:
Linux fedora 6.7.10-100.fc38.x86_64 #1 SMP PREEMPT_DYNAMIC 星期一 3 月 18 日 18:51:12 UTC 2024 x86_64 GNU/Linux
就我而言,我使用了充电线代替数据传输线并且有非常有用的关于差异的背景信息这里整理好之后,我按照其他论坛上关于 Fedora OS 的信息进行操作。
识别硬件设备:
lsusb
返回:
总线001设备019:ID 12d1:107f 华为技术有限公司DUA-L22
然后,检查 Android plugdev-group:
cat /etc/groups
如果没有,那么:
sudo groupadd plugdev
sudo usermod -aG plugdev $LOGNAME
现在添加缺失的 udev 规则:
cd /etc/udev/
vim 51-android-rules
并从 lsusb ID 输出中添加以下行:
子系统=="usb", ATTRS{idVendor}=="12d1", ATTRS{idProduct}=="107f", 模式="0666"
最后重新启动 adb-server:
sudo adb kill-server
sudo adb start-server
现在检查该设备是否已列出:
adb devices
如果找到则返回该设备:
MNV9K187064XX482 设备
并且可以通过 abd shell 访问。
答案2
您可以尝试在开发者选项中将 USB 调试设置为启用。然后您应该能够运行 lsusb。
答案3
遇到了同样的问题 - 电缆不支持数据传输。尝试更换用于连接设备的电缆。