在Android平台下做开发,adb总是需要使用到的,同时,因为linux没有windows这样操作傻瓜化,有些东西还是需要自行设置的,否则将会连接不上。

关于这些内容,google也有一定的描述,可以参考http://developer.android.com/tools/device.html

这个问题以前一直没有重视,我的三星GT5700手机和华为T9200手机连接一直很顺利,adb devices每次都能正常看到设备,不过换到展讯的6820平台时发现死活找不到设备,这下郁闷了,花了一些时间搜索资料验证,最后终于成功了,下面总结了一下adb设备驱动的安装经验,希望对Ubuntu系统下调试android设备的同学有个帮助。

1. 确保设备已经连接正常

首先需要取得root权限,这个没啥说的。然后用lsusb命令列一下所有USB设备,如下图所示:

这里可以比较清楚的看到有一个设备,ID号是1782:5d04,如果你的系统上有很多USB设备连接你一时看不清楚,可以插拔设备打出ID号对比一下,确保找到这个ID。

这个ID的前面实际上是厂商编号,后面是产品编号。厂商编号是唯一的,比如htc是0x0bb4,Samsung是0x04e8,Qualcomm是0x05c6,华为则是0x12d1。这里我们看见的0x1782则是展讯的厂商号。

2. 在/etc/udev/rules.d/下创建一个配置文件

这个配置文件将在设备连接时被查询,比如51-android.rules。

编辑内容如下:

SUBSYSTEM=="usb",ATTR(idVendor)=="1782", MODE="0666", GROUP="plugdev"

这里解释一下这几个选项,

SUBSYSTEM是标识这是一个USB设备,

ATTR(idVendor)r这一项就是描述厂商的ID号了,

MODE描述的是访问权限

GROUP描述成即插即用,不过这里用处不大,写不写都可以

其实还应该写一个OWNER项,用来指定是哪个用户有权限操作,如果不写则是root(不是所有用户都可以访问),这点需要注意一下,有时候有些同学会在这里被卡住。因为我个人一直使用root权限操作的,所以这里就省略了。

还有一点,有些时候我们会看到SYSFS{"High Tech Computer Corp."}这样的一个项,这个参数也是设备厂商的意思,貌似以前的官方就是这么写的,当初因为HTC帮Google做的手机,所以一开始用例上写的是“High Tech Computer Corp.”,不过现在官方的示例已经改成ATTR(idVendor)了。

3. 给这个文件设置权限

chmod a+r/etc/udev/rules.d/51-android.rules

4. 重启udev

/etc/init.d/udev restart

5. 增加adb_usb.ini文件

在~/.android目录下增加一个adb_usb.ini文件,这里的路径实际上是各个用户的根目录,如果你需要切换用户的话,记得每个用户下都需要增加这个东东。

adb_usb.ini文件中写入厂商ID号,和前面不同的是这里需要写上0x的前缀,比如我的展讯手机就是写0x1782

网上搜过不少资料,这一步有些资料上都没提到,估计他们是没有用这步就成功了,但我个人死活不成功,直到增加了这个文件才行,卡了不少时候。

6. 重启adb

adb kill-server

adb start-server

adb devices

这时应该可以看见设备了,下面就可以正常使用adb了

ubuntu adb devices 找不到任何东西,安装驱动的更多相关文章

  1. Ubuntu adb devices :???????????? no permissions (verify udev rules) 解决方法

    Ubuntu adb devices :???????????? no permissions (verify udev rules) 解决方法http://www.cnblogs.com/cat-l ...

  2. ubuntu下 adb devices找不到devices

    不同手机用数据线与ubuntu连接后,执行adb devices,好多出现找不到devices的情况. 这里解决措施: 1. 执行lsusb(连接手机前与后) 找到显示内容的差异项: root@loc ...

  3. [ubuntu] adb devices出现no permissions

    简书排版 http://www.jianshu.com/p/46e8848c6646 今天把一款测试的华为手机带回家,发现无法联机调试 笔者操作系统是 ubuntu 14.04 如果是windows找 ...

  4. Ubuntu adb devices 出现??? no permissions 的解决方法

    在ubuntu 12.10下运行adb devices出现: List of devices attached ???????????? no permissions 1.用命令:   lsusb 以 ...

  5. Ubuntu adb devices : no permissions 解决方法

    ntun下USB连接Android手机后,使用adb devices 出现如下: List of devices attached ???????????? no permissions 同时在DDM ...

  6. Ubuntu adb devices :???????????? no permissions 解决方法[转]

    转自: http://www.cnblogs.com/cat-lee/archive/2011/07/09/2101718.html untun下USB连接Android手机后,使用adb devic ...

  7. adb devices找不到设备解决办法

    问题现象: 解决办法: 1.在设备管理器Android Device中找到设备硬件Id USB\VID对应值: 3.找到.android目录,找到adb_usb.ini文件,如果没有此文件则新建一个, ...

  8. adb devices 找不到设备

    问题如图: 解决方法: 1.在开发人员选项中,找到USB调试,打开USB调试 2.如果还不行,下载360手机助手,连接手机,会自动安装驱动 3.再次adb devices,OK

  9. 【android】安卓手机连接电脑了,但是adb devices找不到设备及找到设备但无权限的问题

    安卓手机连接电脑的时候,会遇到adb连接失败,adb devices为空,或者连接成功,但是显示unauthorized的情况.遇到这种情况,一般认为是手机驱动安装失败,会选择重新下载安装驱动,如果还 ...

随机推荐

  1. SQL Join 的三种类型

    1.Hash Match Join Hash运算(即散列算法) 和Hash表. Hash运算是一种编程技术,用来把数据转换为符号形式,使数据可以更容易更快速地被检索.例如,表中的一行数据,可以通过程序 ...

  2. ORACLE数据库闪回日志写满

    网站页面无法显示完整.检查web服务是正常的,所以可能是ORACLE数据库出了问题. 首先检查闪回日志写满 然后检查归档日志文件写满的缘故了.使用以下几个命令可以看出当前归档日志文件的使用情况: se ...

  3. jquery-ui-datepicker定制化,汉化,因手机布局美观化源码修改

    感谢浏览,欢迎交流=.= 公司微信网页需要使用日历控件,想到jquery-mobile,但是css影响页面布局,放弃后使用jquery-ui-datepicker. 话不多说,进入正题: 1.jque ...

  4. fstat().stat()函数

    int stat(const char *path, struct stat *buf); int fstat(int fd, struct stat *buf); 唯一不同是参数不同,其他一样. 文 ...

  5. 使用sui实现的选择控件【性别、日期、省市级联】

    使用sui mobile做的选择控件,其中sm.js有修改,增加自定义api,详情请看index.html的注释,不多说了,上代码 <!DOCTYPE html> <html> ...

  6. php 定时执行任务

    之于是否控制,可以做到的,应借用第三个条件: config.php <?phpreturn 1;?> cron.phpignore_user_abort();//关掉浏览器,PHP脚本也可 ...

  7. ubuntu apt-get

    近期重新拿起linux的书看了下,整理了一下linux的命令. ubuntu预装了APT和dpkg ,“APT”是 “Advanced Package Tool”的简写,“dpkg ”是“Debian ...

  8. mysql5.7版本无法启动服务问题

    cmd情况下进入mysql的bin目录后 输入命令:mysqld --initialize-insecure d:\mysql\bin

  9. xcode升级后, 插件失效修复

    1. 首先查看 Xcode 的 UUID,在终端执行 defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilit ...

  10. 7个热门开源PHP框架

    PHP(Hypertext Preprocessor)是一种通用开源脚本语言.语法吸收了C语言.Java和Perl的特点.虽然有很多其它可供选择的Web开发语言,像:ASP 和Ruby,但是PHP是目 ...