ADB命令详解

时间:2022-12-25 22:04:04

一、adb介绍

ADB的全称为Android Debug Bridge,字面意思就是安卓调试桥接,简单点说,它是Android系统提供的一套工具,通过它,我们可以在电脑上建立一个连接到手机的通道,然后可以在电脑上向手机发送一些指令,完成一些我们需要的工作。ADB的工作方式比较特殊,采用监听Socket TCP 5554等端口的方式让IDE和Qemu通信,默认情况下ADB会daemon相关的网络端口,所以当我们运行Eclipse是ADB进程就会自动运行。

主要功能:1)运行设备的shell(命令行)

2)管理模拟器或设备的端口映射

3)计算机和设备之间上传/下载文件

4)将本地apk软件安装至模拟器或Android设备

ADB是一个客户端-服务端程序,其中客户端是用来操作的电脑,服务器端是Android设备。

二、adb常用命令

所有的命令工具都可使用-help参数查看用法,所以我们可以使用 adb –help 来获取adb所有参数。以下介绍一些常用的命令:

1.显示系统中全部Android平台:android list targets

2.显示系统中全部AVD(模拟器):android list avd

3.创建AVD:emulator –avd 名称 –sdcard ~/名称.img (-skin 1280*800)

4. 启动模拟器:emulator -avd 名称 -sdcard ~/名称.img (-skin 1280x800)
5. 删除AVD(模拟器):android delete avd --name 名称
6. 创建SDCard:mksdcard 1024M ~/名称.img
7. AVD(模拟器)所在位置:Linux(~/.android/avd)      Windows(C:\Documents and Settings\Administrator\.android\avd)
8. 启动DDMS:ddms
9. 显示当前运行的全部模拟器:adb devices
10. 对某一模拟器执行命令: abd -s 模拟器编号 命令
11. 安装应用程序:adb install -r 应用程序.apk
12. 获取模拟器中的文件:adb pull <remote> <local>
13. 向模拟器中写文件:adb push <local> <remote>
14. 进入模拟器的shell模式:adb shell
15. 启动SDK,文档,实例下载管理器:android
16. 缷载apk包:
      adb shell
      cd data/app
      rm apk包
      exit
      adb uninstall apk包的主包名
      adb install -r apk包
17. 查看adb命令帮助信息:adb help
18. 在命令行中查看LOG信息:adb logcat -s 标签名
19. adb shell后面跟的命令主要来自:源码\system\core\toolbox目录和源码\frameworks\base\cmds目录。
20. 删除系统应用:
      adb remount (重新挂载系统分区,使系统分区重新可写)。
      adb shell
      cd system/app
      rm *.apk
21. 获取管理员权限:adb root
22. 启动Activity:adb shell am start -n 包名/包名+类名(-n 类名,-a action,-d date,-m MIME-TYPE,-c category,-e 扩展数据,等)。
23、发布端口:(你可以设置任意的端口号,做为主机向模拟器或设备的请求端口)如:
     adb forward tcp:5555 tcp:8000
24、复制文件:(你可向一个设备或从一个设备中复制文件)
     复制一个文件或目录到设备或模拟器上:
     adb push <source> <destination></destination></source>
      如:adb push test.txt /tmp/test.txt
     从设备或模拟器上复制一个文件或目录:
     adb pull <source> <destination></destination></source>
     如:adb pull /addroid/lib/libwebcore.so .
25、查看bug报告: adb bugreport
27、记录无线通讯日志:
    一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录:
    adb shell
    logcat -b radio
28、获取设备的ID和序列号:
     adb get-product
     adb get-serialno
29、访问数据库SQLite3
     adb shell
     sqlite3
#cd system/sd/data //进入系统内指定文件夹
#ls //列表显示当前文件夹内容
#rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件
#rm xxx //删除文件xxx
#rmdir xxx //删除xxx的文件夹