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