在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. MySQL配置文件详解

    MYSQL 配置文件详解 “全局缓存”.“线程缓存”,全局缓存是所有线程共享,线程缓存是每个线程连接上数据时创建一个线程(如果没有设置线程池),假如有200连接.那就是200个线程,如果参数设定值是1 ...

  2. jQuery查看dom元素上绑定的事件列表

        jQuery API提供了一种能够查看元素已绑定事件的列表,这个功能在进行功能调试的时候特别有用,尤其确定在代码执行过程中元素绑定的事件是否被更改. 1: jQuery( elem ).dat ...

  3. jquery api 笔记(2) 事件 事件对象

    事件 #1.resize()     缩放窗体:window.resizeTo(width, height); 并不是兼容做法.   #2 .scroll() ->获取滚动条的位置: .scro ...

  4. php 接口 implements 使用

    主要对类名,类所拥有的方法,以及所传参数起约束和规范做用,感觉跟php abstract 抽象类又有点像. 一,接口的定义和调用 <?php interface face1 { const pa ...

  5. #Leet Code# Convert Sorted Array to Binary Search Tree

    描述:递归 代码: class Solution: # @param num, a list of integers # @return a tree node def sortedArrayToBS ...

  6. networkRequest

    void TPHttp::applyResource(){    QJsonObject json;    json.insert("ProductCode","MoVd ...

  7. C# 翻页设计:首页,上一页,下一页,末页 ,跳转

    int pageSize = 0; //每页显示行数 int nMax = 0; //总记录数 int pageCount = 0; //页数=总记录数/每页显示行数 int pageCurrent ...

  8. Visual C++ 6.0常用快捷键

    一.常用编译相关的快捷键 1.编译(单个文件)  Ctrl+F7 2.连接 F7 3.运行  Ctrl+F5 二.常用调试相关的快捷键 1.GO(全速运行)  F5 2.Stop Debuging(停 ...

  9. MYSQL ERROR 1130: Host is not allowed to connect to this MySQL server

    今天安装MYSQL遇到MYSQL ERROR 1130: Host is not allowed to connect to this MySQL server, 试了很多办法都不行 skip-gra ...

  10. PHP练习题(二)

    程序6.题目: 假设某人有100,000现金,每经过一次路口需要进行一次交费交费规则为当他现金大于50,000时每次需要交%5,如果现金小于等于50,000时每次交5,000.问此人可以经过多少次这个 ...