关于ubuntu下adb没法找到设备的分析

本人因为是一个ubuntu新手,装机,配置jdk,eclipse, sdk, pydev ,adt这些种种弄的我身心俱疲,等我这些弄好之后,觉得万事俱备只欠东风了,结果倒霉的adb出了问题了,之前上班的时候记得usb设备在linux下是不须要驱动的,我甚至还觉得要装驱动什么豌豆荚之类的后来仍是没有去下,肯定不须要驱动,但是个人adb就是找不到设备啊,我说的找不到设备是这样的状况,就是adb devices : linux

结果:List of devices attached, 下面什么设备也没有。 android

搜索网络说可能的状况有如下几种,我一一排查 ubuntu

1.个人android手机版本和adb版本不兼容 网络

2.adb须要的5037端口被其余的应用程序占用了 eclipse

3.个人adb_usb.ini文件中没有加入我手机的pid号 tcp


1.我以为不可能,由于个人adb是最新的版本1.0.32,手机的版本是4.1的,我以为adb应该向下兼容,因此排除这个可能 spa

2.我用命令检查一下5037的端口谁在占用 server

netstat -ap | grep 5037 ip

结果是:tcp        0      0 localhost:5037          *:*                     LISTEN      26748/adb 开发

就是adb本身在用啊,这个也不可能,其实不经过这个步骤也会知道5037有没有被占用

root@root-MS-7345:/etc/udev/rules.d# adb kill-server
root@root-MS-7345:/etc/udev/rules.d# adb start-server
* daemon not running. starting it now on port 5037 *
* daemon started successfully *

3.看来只有第三种可能啦,就是adb_usb.ini没有加入手机的pid号

  • 1.你们要注意了,这个时候就是万恶的问题出现了,这个时候要去找adb_usb.ini这个文件,首先你要明确你用的什么身份登录的ubuntu系统,若是是root身份。那请去目录/root/.android寻找这个文件,并把vid加入进去,若是你使用的是user用户,那请去/home/username/.android下寻找这个文件,并把vid加入进去。我就是搞混了这个登录用户一直去/home/username/.android下修改,结果搞了一天都没有效果,狂怒啊。效果是这样的:# ANDROID 3RD PARTY USB VENDOR ID LIST -- DO NOT EDIT.
    # USE 'android update adb' TO GENERATE.
    # 1 USB VENDOR ID PER LINE.
    0x2717,注意vid前面要加上0x,表示16进制的
  •    下面进行第二步动做。

      修改/etc/udev/rules.d/51-android.rules的方法:


      SUBSYSTEM=="usb", ATTR{idVendor}=="2717", MODE="9039",            GROUP="plugdev"

ps:pid 怎么得到,连接手机与电脑而后在终端输入lsusb, 获得相似下面的输出:

Bus 001 Device 005: ID 2717:9039  
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

这里个人设备的vid是2717,pid是9039

还有一个问题是怎么能显示出隐藏的文件,请用快捷键:ctrl+h


还有一种状况是adb devices:

结果是:List of devices attached
20ca0ca1    offline

这个有两种状况,

1.adb 版本低

2.手机段没有设置开发模式开启

3.手机和电脑连接后没有在手机端确承认以在电脑端操做。这个我没有具体的试,遇到再研究吧,仅以此文记念我为此消耗的两天。

相关文章
相关标签/搜索