什么是ADB
adb全称Android Debug Bridge,起到调试桥的作用。通过adb在Eclipse的DDMS来调试Android程序。
adb工具还可以管理手机的状态,进行很多手机相关的操作,如安装apk软件、系统升级、运行shell命令等。
如下解释下ADB常用的几个命令
- 查看设备
adb devices
这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示
- 安装软件
adb install [-r] [-s]
这个命令将指定的apk文件安装到设备上.
-r 强制安装(在某些情况下可以已有些应用程序在运行或不可写,可加上此参数强制安装)
-s 将apk文件安装在SD-Card
- 卸载软件
adb uninstall [-k] <软件名>
如果加 -k 参数,为卸载软件但是保留配置和缓存文件.
- 从电脑上发送文件到设备
adb push <本地路径> <远程路径>
用push命令可以把本机电脑上的文件或者文件夹复制到设备(手机)例:传送文件到手机中,如:
adb push recovery.img /sdcard/recovery.img
将本地目录中的recovery.img文件传送手机的 SD卡中并取同样的文件名。
- 从设备上下载文件到电脑
adb pull <远程路径> <本地路径>
用pull命令可以把设备(手机)上的文件或者文件夹复制到本机电脑
- 显示帮助信息
adb help
-- 这个命令将显示帮助信息
- 显示ADB命令版本号
adb version
- 启动计算机adb 服务进程
adb start-server
当然你可以直接使用adb devices命令时自动开启
- 获取机器MAC地址
adb shell cat /sys/class/net/wlan0/address
-
关闭计算机adb 服务进程
adb kill-server
这样可以关闭adb服务进程,有时正在使用adb,然后想删除adb,那这时你得先关闭进程才了删除,就要用到它了。
- 重启设备
adb reboot [bootloader|recovery] adb reboot-bootloader adb reboot [bootloader|recovery] adb reboot-bootloader
重启有三种方式:
- 直接重启设备回到使用界面adb reboot即可
- 重启设备到bootloader引导模式:adb reboot-bootloader或adb reboot bootloader
- 重启到recovery刷机模式:adb reboot recovery
- 返回设备状态
adb get-state
返回设备状态,有三种结果:关机,引导模式,设备在线
- 返回设备序列号
adb get-serialno
返回设备序列号SN值
- 获取设备的ROOT权限
adb remount
通过这个命令就可以获取设备的ROOT权限,可以通过adb操作/system等系统目录,如
adb push xx.app /system/app
即可将app应用直接放入系统目录。这个操作必须机子已解锁并ROOT过。
# 找到该APP的进程ID
adb shell ps
# 找到你APP的包名
# Mac/Unix: save some time by using grep:
adb shell ps | grep your.app.package
# 按照上述命令操作后,看起来是这样子的:
# USER PID PPID VSIZE RSS WCHAN PC NAME
# u0_a198 21997 160 827940 22064 ffffffff 00000000 S your.app.package
# 通过PID将你的APP杀掉
adb shell kill -9 21997
# APP现在被杀掉啦
# 找到该APP的进程ID
adb shell ps
# 找到你APP的包名
# Mac/Unix: save some time by using grep:
adb shell ps | grep your.app.package
# 按照上述命令操作后,看起来是这样子的:
# USER PID PPID VSIZE RSS WCHAN PC NAME
# u0_a198 21997 160 827940 22064 ffffffff 00000000 S your.app.package
# 通过PID将你的APP杀掉
adb shell kill -9 21997
# APP现在被杀掉啦
发送广播
adb shell am broadcast -a com.test.acion
adb shell am broadcast -a com.test.acion
在命令行中查看LOG信息:
adb logcat -s 标签名
获取设备的ID和序列号:
adb get-product
adb get-serialno
清除应用的数据:
adb shell pm clear packagename
查看栈顶Activity名,用于获取包名 :
adb shell dumpsys activity top
查看所有已安装的应用包名 :
adb shell pm list packages -f
am的状态 Package Manager State :
adb shell dumpsys activity
包信息 Package Information :
adb shell dumpsys package
内存使用情况Memory Usage :
adb shell dumpsys meminfo