⏩ 大家好哇!我是小光,正在努力寻找自己的职业方向。
⏩ 在调试设备时,经常会用到adb命令,本文对linux adb命令做一个知识分享。
⏩ 感谢你的阅读,不对的地方欢迎指正。
1.adb命令
即 Android Debug Bridge 是一种允许模拟器或已连接的 Android 设备进行通信的命令行工具,它可为各种设备操作提供便利,如安装和调试应用,并提供对 Unix shell(可用来在模拟器或连接的设备上运行各种命令)的访问。可以在Android SDK/platform-tools中找到 adb 工具或下载 ADB Kits 。
1.1 adb 语法:
adb [-d|-e|-s ]
1.2 常用命令列表:
adb root #以 root 权限运行 adbd
adb devices #查看连接设备
adb shell # 进入手机
adb -s cf27456f shell # 指定连接设备使用命令
adb logcat #查看日志
adb shell logcat | grep update_engine #升级时过滤无关信息
adb pull <设备里的文件路径> [电脑上的目录] 复制设备里的文件到电脑
示例:
a
d
b
p
u
l
l
/
s
d
c
a
r
d
/
a
b
c
.
m
p
4
/
t
m
p
/
a
d
b
p
u
s
h
<
电脑上的文件路径
>
<
设备里的目录
>
复制电脑里的文件到设备示例:
adb pull /sdcard/abc.mp4 ~/tmp/ adb push <电脑上的文件路径> <设备里的目录>复制电脑里的文件到设备 示例:
adbpull/sdcard/abc.mp4 /tmp/adbpush<电脑上的文件路径><设备里的目录>复制电脑里的文件到设备示例:adb push e:/ss.au3 /data/local/tmp/
1.3 出现问题与解决方案
【问题1】
$adb device
List of devices attached
004401231823762 no permissions (user in plugdev group; are your udev rules wrong?); see [http://developer.android.com/tools/device.html]
$adb shell
error: insufficient permissions for device: user in plugdev group; are your udev rules wrong?
See [http://developer.android.com/tools/device.html] for more information
【问题原因】:Ubuntu下未添加adb的usb驱动
【解决方案】:在目录/etc/udev/rules.d/下添加文件51-android.rules,并在文件中添加如下内容:
sudo gedit /etc/udev/rules.d/51-android.rules
SUBSYSTEM==“usb”, ATTRS{idVendor}“18d1”, ATTRS{idProduct}“d002”,MODE=“0666”
说明:其中idVendor和idProduct分别代表厂商号和产品号,可通过终端输入lsusb命令查询,如我的PC显示的设备USB接口信息如下:
Bus 001 Device 017: ID 18d1:d002 Google Inc.