在ubuntu下连接Android设备(驱动问题)

先进入Android的安装文件夹:Linux环境下的Android的ADK安装配置

在ubuntu下连接Android设备,虽然不用像windows那样安装驱动,然而却会遇见一个错误:输入adb shell,会提示insufficient permissions for device,输入adb devices,设备名称会显示 ????????等一大堆问号。

这是因为ubuntu默认是以非root用户运行的。如果要使用adb 进行usb调试,使用root账号去执行相关命令固然可以进入adb shell,但是却太麻烦。

另一种方法是配置udev的规则。方法如下:

1、输入lsusb,查看设备的ID号。如我的输出内容如下:

Bus 002 Device 008: ID 0bb4:0d02 High Tech Computer Corp. 
Bus 008 Device 002: ID 046d:c52e Logitech, Inc. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 006 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 008 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 009 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub

其中Bus 002 Device 008: ID 0bb4:0d02 High Tech Computer Corp.这一行就是我的HTC手机的USB使用端口了。记住中间的这两个ID:0bb4和0d02。

2、sudo vi /etc/udev/rules.d/70-android.rules

如果没有这个文件,可以创建,然后加入以下内容

SUBSYSTEM=="usb",ATTRS{idVendor}=="0bb4",ATTRS{idProduct}=="0d02",MODE="0666"

3、修改权限

sudo chmod a+rx /etc/udev/rules.d/70-android.rules

4、重启udev 服务:

sudo service udev restart

5、重启adb server。

重连设备,然后执行sudo ./adb kill-server

adb start-server

然后看看adb devices是否已经已经正常显示出设备的名称了。

PS:

最新修改方法,不用去看设备的ID,直接在rules.d下增加一个文件51-android.rules,内容为:

  1. SUBSYSTEM=="usb" ENV{DEVTYPE}=="usb_device", MODE="0666"  

目前通用于所有android设备。保存后如上面的步骤修改权限,重启udev和adb,然后重新插上手机就可以了。

转载于:https://my.oschina.net/hibony/blog/850415

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值