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,否则没效果)