ADB 未在 Ubuntu 上检测到我的 android 设备

ADB is not detecting my android device on Ubuntu

需要帮助,"adb"检测不到我的phone,我不知道该怎么办;这就是我所做的,如果我有错误或有什么问题请告诉我。

  1. 我以 root 身份登录并创建此文件。

    /etc/udev/rules.d/51-android.rules
    
  2. 这些是我的规则,我的 phone LG L80+Bello D331.

    SUBSYSTEM=="usb", ATTRS{idVendor}=="1004", MODE="0666"
    
  3. 我运行这个命令和重启

    chmod a+r /etc/udev/rules.d/51-android.rules
    
  4. 最后,我测试了我的更改,但没有显示我的设备。

    $ adb devices
    List of devices attached
    

附加信息

问:Android是否开启了USB调试? R:是的

OS: Ubuntu 15.04(64 位)

$ lsusb
Bus 004 Device 003: ID 8086:0189 Intel Corp. 
Bus 004 Device 005: ID 1004:6300 LG Electronics, Inc. <<<
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 004: ID 138a:0011 Validity Sensors, Inc. VFS5011 Fingerprint Reader
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

$ ls -l /dev/bus/usb/004/
total 0
crw-rw-r-- 1 root root 189, 384 ago 21 05:21 001
crw-rw-r-- 1 root root 189, 385 ago 21 05:21 002
crw-rw-r-- 1 root root 189, 386 ago 21 05:21 003
crw-rw-rw- 1 root root 189, 388 ago 21 18:15 005

更新 1

51-android.rules 文件变化:

SUBSYSTEM=="usb", ATTR{idVendor}=="1004", MODE="0666", GROUP="plugdev"

命令:

$ lsusb
Bus 004 Device 004: ID 8086:0189 Intel Corp. 
Bus 004 Device 003: ID 1004:6300 LG Electronics, Inc. <<<
Bus 004 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 003: ID 138a:0011 Validity Sensors, Inc. VFS5011 Fingerprint Reader
Bus 003 Device 002: ID 8087:0024 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

$ ls -l /dev/bus/usb/004/
total 0
crw-rw-r-- 1 root root    189, 384 ago 21 11:33 001
crw-rw-r-- 1 root root    189, 385 ago 21 11:33 002
crw-rw-rw- 1 root plugdev 189, 386 ago 21 11:33 003 <<<
crw-rw-r-- 1 root root    189, 387 ago 21 11:33 004

但是,"adb" 没有检测到我的设备::(

$ adb devices
List of devices attached

更新 2

Here is the solution

参考

lsusb 输出我看到你的设备作为设备 005 连接到总线 004

在这里 总线 004 设备 005:ID 1004:6300 LG Electronics, Inc.

我看到你没有创建任何 group.You 需要创建一个组(如果权限被拒绝,请在 "sudo" 以下命令之前):

1) 添加 plugdev 组:

 groupadd plugdev

2) 将您的用户名添加到 plugdev 组 (useradd -G {group-name} 用户名):

 useradd -G plugdev orvi

3) 重启udev(您可能需要注销并重新登录以更新用户组):

 sudo service udev restart

4) 现在使用以下命令重新加载规则:

 sudo udevadm control --reload-rules
 sudo service udev restart
 sudo udevadm trigger

5) 验证设备现在允许 plugdev 用户组访问

ls -l /dev/bus/usb/<bus number from step 4>

它应该给出类似的东西:

  crw-rw-rw- 1 root plugdev 189, 329 Jul  3 18:23 074

6) 运行 adb devices 确认权限正确并享受!

在 Ubuntu 16.04 上,我必须安装最新的 android sdk,而不是 apt-get 附带的那个,最后我可以从 adb 看到设备。

使用 apt-get install 安装 android-tools-adb 包。

这为所有 Android 设备提供了一组由社区维护的默认 udev 规则。

确保您在 plugdev 组中。如果您看到以下错误消息,adb 没有在 plugdev 组中找到您:

error: insufficient permissions for device: udev requires plugdev group membership

使用 id 查看您所在的组。

使用 sudo usermod -aG plugdev $LOGNAME 将您自己添加到 plugdev 组。

以下示例显示如何安装 Android adb 工具包。 apt-get install android-tools-adb

form android developer doc: https://developer.android.com/studio/run/device.html#connect

我知道您的问题已解决,但对于以后的每个人,请确保您没有两个版本的 adb 运行。 Android Studio自带adb,我通过yum安装了adb。这些实例相互干扰并导致了很多问题,包括无法看到我的设备。

我的phone以为是连上了电脑,但是电脑不识别。在我的 phone 上,我点击了 'USB Debugging Enabled' 的通知,滚动到 'USB Debugging',然后关闭并再次打开设置。 adb然后看到了我的phone.

如果您使用的是虚拟盒子(ubuntu),底部有一个菜单,可让您添加和删除USB 设备。如果您看不到底部菜单,则表示您可能处于全屏模式。

我个人遇到的问题是,我的带有 USB C 端口的设备出现在 lsusb 中,但没有出现在 adb 设备中。

我尝试了所有给出的解决方案,如 adb kill-server、配置 /etc/udev/rules.d/51-android.rules 文件、~/.android/adb_usb.ini 文件、设置 adb 规则 https://github.com/M0Rf30/android-udev-rules 并重新启动,但没有任何帮助。

最终起作用的是将设备连接到 USB2.0 端口。我有一个新台式机,所以大多数端口都是 USB3.0。