Date
Dec. 22nd, 2024
 
2024年 11月 22日

Post: ADB 常用指令

ADB 常用指令

Published 12:11 Nov 20, 2015.

Created by @ezra. Categorized in #Programming, and tagged as #Android.

Source format: Markdown

Table of Content

调试Android程序有时需要adb shell 命令,adb全称Android Debug Bridge ,就是起到调试桥的作用。通过adb我们可以在Eclipse中通过DDMS来调试Android程序,说白了就是debug工具。adb通过监听Socket TCP 5554等端口让IDE和Qemu通讯。默认情况下当我们运行Eclipse时adb进程就会自动运行。adb是一个C/S模式的程序,由三个部分组成:a client,a server and a daemon。其中client和server运行在的development machine上,daemon运行在emulator或设备上。

adb一般位于 /platform-tools/ 目录下。可以把adb 路径添加进系统环境变量path里面。

以下是常用adb命令

  1. 显示系统中全部Android平台:
android list targets
  1. 显示系统中全部AVD (模拟器) :
android list avd
  1. 创建AVD (模拟器) :
android create avd –name 名称 –target 平台编号
  1. 启动模拟器:
emulator -avd 名称 -sdcard ~/名称.img (-skin 1280×800)
  1. 删除AVD (模拟器) :
android delete avd –name 名称
  1. 创建SDCard:
mksdcard 1024M ~/名称.img
  1. AVD(模拟器)所在位置:

Linux: ~/.android/avd

Windows: C:\Documents and Settings\Administrator.android\avd)

  1. 启动DDMS:
ddms
  1. 显示当前运行的全部模拟器:
adb devices
  1. 对某一模拟器执行命令:
abd -s 模拟器编号 命令
  1. 安装应用程序:
adb install -r 应用程序.apk
  1. 获取模拟器中的文件:
adb pull <remote> <local>
  1. 向模拟器中写文件:
adb push <local> <remote>
  1. 进入模拟器的shell模式:
adb shell
  1. 启动SDK,文档,实例下载管理器:
android
  1. 缷载apk包:
adb shell
cd data/app
rm apk包
exit
adb uninstall apk包的主包名
adb install -r apk包
  1. 查看adb命令帮助信息:
adb help
  1. 在命令行中查看LOG信息:
adb logcat -s 标签名
  1. adb shell后面跟的命令主要来自:

源码\system\core\toolbox目录和源码\frameworks\base\cmds目录。

  1. 删除系统应用:
adb remount  (重新挂载系统分区,使系统分区重新可写) 。
adb shell
cd system/app
rm *.apk
  1. 获取管理员权限:
adb root
  1. 启动Activity:
adb shell am start -n 包名/包名+类名 (-n 类名,-a action,-d date,-m MIME-TYPE,-c category,-e 扩展数据,等) 。
  1. 发布端口:

你可以设置任意的端口号,做为主机向模拟器或设备的请求端口。如:

adb forward tcp:5555 tcp:8000
  1. 复制文件:

你可向一个设备或从一个设备中复制文件,复制一个文件或目录到设备或模拟器上:

adb push <source> <destination></destination></source>

从设备或模拟器上复制一个文件或目录:

adb pull <source> <destination></destination></source>
  1. 搜索模拟器/设备的实例:

取得当前运行的模拟器/设备的实例的列表及每个实例的状态:

adb devices
  1. 查看bug报告:
adb bugreport
  1. 记录无线通讯日志:

一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录:

adb shell
logcat -b radio
  1. 获取设备的ID和序列号:
adb get-product
adb get-serialno
  1. 访问数据库 SQLite3
adb shell
sqlite3
  1. cd system/sd/data //进入系统内指定文件夹

  2. ls //列表显示当前文件夹内容

  3. rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件

  4. rm xxx //删除文件xxx

  5. rmdir xxx //删除xxx的文件夹

Pinned Message
HOTODOGO
The Founder and CEO of Infeca Technology.
Developer, Designer, Blogger.
Big fan of Apple, Love of colour.
Feel free to contact me.
反曲点科技创始人和首席执行官。
开发、设计与写作皆为所长。
热爱苹果、钟情色彩。
随时恭候 垂询