【adb】adb常用命令

Android Debug Bridge (adb)

Android 调试桥 (adb) 是一种功能多样的命令行工具,可让您与设备进行通信。adb 命令可用于执行各种设备操作,例如安装和调试应用。adb 提供对 Unix shell(可用来在设备上运行各种命令)的访问权限。它是一种客户端-服务器程序,包括以下三个组件:

  • 客户端:用于发送命令。客户端在开发机器上运行。您可以通过发出 adb 命令从命令行终端调用客户端。
  • 守护程序 (adbd):用于在设备上运行命令。守护程序在每个设备上作为后台进程运行。
  • 服务器:用于管理客户端与守护程序之间的通信。服务器在开发机器上作为后台进程运行。

adb 包含在 Android SDK 平台工具软件包中。

您可以使用 SDK 管理器下载此软件包,该管理器会将其安装在 android_sdk/platform-tools/ 下。

adb常用命令

1. 连接设备

(1) adb连接模拟器:

举例:MuMu模拟器连接adb(下述命令在MuMu官网上搜 '连接adb' 就能找到命令 )

  • windows:
    • 在终端中输入:adb connect 127.0.0.1:7555
    • 再输入:adb shell
  • mac:(本质:重启服务)
    • 在终端中输入adb kill-server 命令;(关闭服务)
    • 再输入adb devices 命令。(查看设备状态)

(2)adb 连接真机(android手机)设备:

  1. 手机端:让手机处于调试模式;
    • 设置 -> 关于手机 ->连续点击版本号7次,显示您已处于开发者模式
    • 设置 -> 开发者选项 -> 打开USB调试
  2. 电脑端安装手机驱动。
    • 可以通过豌豆荚或者手机助手下载驱动,用完删掉即可(可能端口号冲突)

2. 查看设备状态:

adb devices 或者 adb get-state

设备状态种类

  • device 正常
  • offline 连接出现异常,设备无响应
  • unauthorized 未授权

3. adb命令格式

powershell 复制代码
adb [-d|-e|-s <serialNumber>] <command>

参数 含义

  • -d 指定当前唯一通过 USB 连接的 Android 设备为命令目标
  • -e 指定当前唯一运行的模拟器为命令目标
  • -s 指定相应 serialNumber 号的设备/模拟器为命令目标

4. 安装命令 adb install

如果本地只有一个设备,不用加 -s参数

在终端中输入命令:

  • 普通安装:adb install <apk路径>
  • 覆盖安装/替代安装: adb install -r <apk路径>

注意:<apk路径> 要替换为真实的apk路径

5. 卸载命令 adb uninstall

在终端中输入以下命令:

  • 卸载应用 adb uninstall 包名
  • 卸载应用(不删除配置文件,保存数据缓存信息)adb uninstall -k 包名

6. 获取当前的页面名

  1. 打开手机app应用的某个页面
  2. 打开命令行工具,执行命令:adb shell "dumpsys window | grep mCurrentFocus"

7. 获取启动页面的activity

命令:

  • mac: adb logcat ActivityManager:I | grep "cmp"
  • win: adb logcat ActivityManager:I | findstr "cmp"

8. 启动页面

命令:adb shell am start -n <包名>/<activity名>

举例:adb shell am start -n com.dangdang.buy2/.StartupActivity

9. adb shell 应用

Android 是 Linux内核的,别的操作系统可以通过adb shell 这个命令来操控 android系统

  • 查看目录结构:adb shell ls
  • 查看系统当前时间:adb shell date
  • 查看系统CPU使用情况:adb shell cat /proc/cpuinfo
  • 查看系统内存使用情况:adb shell cat /proc/meminfo

也可以直接使用adb shell 进入到android系统的内核中,就可以正常使用linux命令了。

查看应用列表:

  • 显示所有应用:adb shell pm list packages
  • 显示系统自带应用:adb shell pm list packages -s
  • 显示第三方应用:adb shell pm list packages -3

10. 清除应用数据及缓存

adb shell pm clear <包名>

举例:adb shell pm clear com.tencent.mobileqq

获取包名命令:adb shell "dumpsys window | grep mCurrentFocus"

区分 pm 和 am

  • pm ( package manager ), 包管理器;
  • am ( activity manager ),你能使用am去模拟各种系统的行为,例如去启动一个activity,强制停止进程,发送广播进程,修改设备屏幕属性等等。

参考链接:

官方文档手册:https://developer.android.com/studio/command-line/adb?hl=zh-cn

adb命令零基础快速入门视频:https://www.bilibili.com/video/BV1Sg411u7GE?p=1\&vd_source=936c723d48d92c0a50090991e8b3c956

相关推荐
yeflx15 小时前
Ubuntu22.04安装Mysql Workbench
数据库·mysql·adb
夜雪一千15 小时前
MySQL 自增 ID 的底层原理与坑点
android·mysql·adb
Dxy12393102162 天前
MySQL JSON 生成列索引原理、实战与坑点
mysql·adb·json
远方 hi2 天前
MySQL 管理
adb
夜雪一千2 天前
MySQL 删除 JSON 类型的数据实战
mysql·adb·json
千码君20164 天前
个人开发者:安卓手机adb调试
android·adb·智能手机
夜雪一千5 天前
MySQL 如何存储经纬度坐标:选型、建表、空间查询实战
android·mysql·adb
有毒的教程5 天前
Dev-C++ 使用扩展库两种方式:DevPak一键安装 / 手动配置(重点)
android·c++·adb
虎王物联5 天前
随身WiFi AT指令实战手册:查串号、改串、锁频、拉起ADB一次讲清
物联网·adb