1.1 安装 adb,下载代码编译完成后,会

在编译过的项目目录下./out/host/linux-x86/bin/生成adb文件,需要拷贝

到/usr/bin目录下,并更改权限。在终端运行 adb help,查看adb是否安装成功。

命令:

sudo cp /home/apuser/code/out/host/linux-x86/bin/adb /usr/bin
sudo chmod a+x /usr/bin/adb
adb help

说明:这个adb文件也可以在android-sdk-linux下的platform-tools目录下找到。

2. 创建spreadtrum usb 专有 VID

命令:

[ -d ~/.android ] || mkdir ~/.android; echo 0x1782 > ~/.android/adb_usb.ini

可以查看/home/apuser/.android/adb_usb.ini是否生成成功,且内容为 0x1782

3. 执行 sudo adb shell,看能否连接上手机,我是执行失败了。

错误码error:
insufficient permissions for device
    执行 sudo adb devices,查看是否能列出设备,如果失败,错误码为:
List of devices attached 
???    no permissions

4. 如果发生 3 中的错误,则需要添加列表

到:/etc/udev/rules.d/51-android.rules

命令:

cd /etc/udev/rules.d
sudo vim /etc/udev/rules.d/51-android.rules

添加
SUBSYSTEM==“usb”, SYSFS{idVendor}==“1782”, MODE=“0666”

其中 1782 为展讯设备号,也可以通过 lsusb 来查看所有 usb 设备。

说明:展讯的设备号是1782,其他平台的可查找确认后,填写到这里。

apuser@changdousunubt:~$ lsusb
Bus 005 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 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 026: ID 1782:5d04 Spreadtrum Communications Inc. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

5. 到此为止, adb 可以使用。

可以shell登录手机,也可以出 log, logcate 具体命令还需要学习。

二、adb devices 没有权限问题处理

$ adb devices
List of devices attached 
????????????	no permissions

根本原因是:
adb server需要以root的权限启动

出现这个问题,首先可根本文第一中出现该问题时的处理方法检查一遍。如果仍然出现该问题那么进行下面的检查和操作。

1.重启udev

sudo /etc/init.d/udev restart

2.到android-sdk-linux目录下adb所在的目录

adb kill-server

sudo ./adb kill-server

说明:在sdk的adb所在目录下执行adb 命令时一定要加./adb; 如果你的adb已经在环境变量中,则可以不加。

3.使用sudo启动adb server

这一步一定要在在 Android sdk 的 adb所在的目录下运行 (这一步很重要,必须要sudo,否则没效果)

sudo ./adb start-server

4.使用命令adb devices,检测

5.使用

sudo ./adb devices

这一步一定要在
在 Android sdk 的 adb所在的目录下运行 (必须要sudo,否则没效果)