红联Linux门户
Linux帮助

Ubuntu12.04安装adb

发布时间:2015-08-22 21:33:11来源:linux网站作者:金佳杰

1、通过apt-get安装adb
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update

sudo apt-get install android-tools-adb


2、将android设备连接至电脑,首先需要取得root权限,通过lsusb查看usb设备(华为Mate 7手机)

root@administrator-IdeaPad-U330p:~# lsusb
Bus 001 Device 002: ID 8087:8000 Intel Corp.
Bus 002 Device 012: ID 12d1:1052 Huawei Technologies Co., Ltd.
Bus 002 Device 007: ID 093a:2521 Pixart Imaging, Inc.
Bus 002 Device 002: ID 5986:0538 Acer, Inc
Bus 002 Device 003: ID 8087:07dc Intel Corp.
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:0003 Linux Foundation 3.0 root hub

这里可以比较清楚的看到有一个设备,ID号是12d1:1052,如果你的系统上有很多USB设备连接你一时看不清楚,可以插拔设备打出ID号对比一下,确保找到这个ID。
这个ID的前面实际上是厂商编号,后面是产品编号。厂商编号是唯一的,比如htc是0x0bb4,Samsung是0x04e8,Qualcomm是0x05c6,华为则是0x12d1。展讯是0x1782厂商号。

编号对照表如下:

 

Manufacturer USB Vendor ID
Acer 0502
Dell 413c
Foxconn 0489
Garmin-Asus 091E
HTC (Older Phones) 0bb4
HTC (Newer phones) 18d1
Huawei 12d1
Kyocera 0482
LG 1004
Motorola 22b8
Nexus One/S 18d1
Nvidia     0955
Pantech 10A9
Samsung 04e8
Sharp 04dd
Sony Ericsson 0fce
Qualcomm 05c6
zhanxun 1782
XiaoMi 2717
ZTE 19D2


3、在/etc/udev/rules.d/下创建一个配置文件
这个配置文件将在设备连接时被查询,比如51-android.rules。
编辑内容如下:
SUBSYSTEM=="usb",ATTR(idVendor)=="12d1", MODE="0666", GROUP="plugdev"
这里解释一下这几个选项,
SUBSYSTEM是标识这是一个USB设备,
ATTR(idVendor)r这一项就是描述厂商的ID号了,
MODE描述的是访问权限
ROUP描述成即插即用,不过这里用处不大,写不写都可以
其实还应该写一个OWNER项,用来指定是哪个用户有权限操作,如果不写则是root(不是所有用户都可以访问),这点需要注意一下,有时候有些同学会在这里被卡住。因为我个人一直使用root权限操作的,所以这里就省略了。
还有一点,有些时候我们会看到SYSFS{"High Tech Computer Corp."}这样的一个项,这个参数也是设备厂商的意思,貌似以前的官方就是这么写的,当初因为HTC帮Google做的手机,所以一开始用例上写的是“High Tech Computer Corp.”,不过现在官方的示例已经改成ATTR(idVendor)了。


4、给这个文件设置权限
chmod a+r/etc/udev/rules.d/51-android.rules

5、重启udev
/etc/init.d/udev restart


6、增加adb_usb.ini文件

在~/.android目录下增加一个adb_usb.ini文件,这里的路径实际上是各个用户的根目录,如果你需要切换用户的话,记得每个用户下都需要增加这个东东。
adb_usb.ini文件中写入厂商ID号,和前面不同的是这里需要写上0x的前缀,比如我的华为Mate 7手机就是写0x12d1

echo 0x12d1 > ~/.android/adb_usb.ini
chmod 755  ~/.android/adb_usb.ini


7、重启adb
adb kill-server
adb start-server
adb devices


8、adb支持多个手机USB调试方法:

在/etc/udev/rules.d/51-android.rules  和 ~/.android/adb_usb.ini 文件中追加其它手机设备,例如(本例华为,小米):

vi  /etc/udev/rules.d/51-android.rules

UBSYSTEM=="usb",ATTR(idVendor)=="12D1", MODE="0666", GROUP="plugdev"
UBSYSTEM=="usb",ATTR(idVendor)=="2717", MODE="0666", GROUP="plugdev"

vi  ~/.android/adb_usb.ini

0x12d2
0x2717


解决64位Ubuntu无法使用adb、aapt的32位兼容问题:http://www.linuxdiyf.com/linux/11928.html

XUbuntu下adb驱动问题:http://www.linuxdiyf.com/linux/11336.html

Ubuntu下adb识别真机:http://www.linuxdiyf.com/linux/9183.html

Ubuntu Android ADB使用:http://www.linuxdiyf.com/linux/11188.html

64位Ubuntu用不了adb:http://www.linuxdiyf.com/linux/3697.html