adb命令大全(含高级用法,均已实际使用验证)

本文详细介绍了如何在Ubuntu系统上安装和配置ADB(AndroidDebugBridge),并涵盖了adb的基本用法如设备连接、应用管理、文件传输、shell命令执行等,以及高级功能如模拟按键、屏幕截图、屏幕录制、系统控制等,是Android开发者必备的工具指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

Android 调试桥 (adb)

Ubuntu系统安装adb

adb命令基础用法

adb命令高级用法


Android 调试桥 (adb)

ADB 是一款多功能命令行工具,可让你通过 USB 或 Wi-Fi 与 Android 设备通信。它用于各种任务,包括:

  • 调试应用程序
  • 安装和卸载应用
  • 传输文件
  • 检索设备信息
  • 运行 shell 命令

Ubuntu系统安装adb

  1. 安装 Android SDK Platform Tools
    sudo apt install android-tools-adb
    

  2. 验证安装
    adb version
    

    应该会看到类似以下内容的输出:

    Android Debug Bridge version 1.0.41
    Version 33.0.3-8889513
  3. 将adb添加到环境变量
    要从任何位置使用 adb,需要将 adb 目录添加到 PATH 变量中。编辑 .bashrc 文件:
    vim ~/.bashrc
    

    在文件的末尾添加以下行:

    export PATH=$PATH:/usr/lib/android-sdk/platform-tools
  4. 重新加载.bashrc文件
    source ~/.bashrc
    

adb命令基础用法

注意:使用 adb 命令需要在设备上启用 USB 调试。位于开发者模式中

  1. 查看连接设备
    adb devices
    
    //列出已连接设备的详细信息
    adb devices -l
    
    //指定设备执行命令
    adb devices -s <serial_number> <cmd>
    //这里的serial_number 就是通过devices列出的序列号 cmd是想要执行的命令
    //例如 adb devices -s c5d1ed6baec1e896 shell 进入指定设备的shell
  2. 安装应用
    adb install <path_to_apk>
    
    //安装应用到sd卡,对于内部存储空间不足的设备很有用
    adb isntall -r <path_to_apk>
    
  3. 卸载应用
    adb uninstall <package_name>
    //注意这里是包名,不是install时的文件名
    //查看所有包名命令 adb shell pm list packages
    
    //卸载应用但保留数据
    adb uninstall -k <package_name>
  4. 启动服务
    adb shell start service <service_name>
    //eg. adb shell start service wifi
    //需要root权限
  5. 进入root权限
    adb root
    
  6. 重新挂载分区(vendor/system可写)
    adb remount
    //一般开发时和root同时执行
    //adb root && adb remount
  7. 查看设备实时日志
    adb logcat
    //可与过滤同时使用 
    adb logcat | grep xxx //Ubuntu下 
    adb logcat | findstr xxx //Windows下 
    
    //常用 
    adb logcat -v color //按log等级色彩区分
    adb logcat -c //清除log 
    adb logcat | grep need > log.txt //组合使用并重定向到文件
  8. 从设备中拉取/向设备中推送文件
    adb pull <remote> <local>  //拉取
    adb push <local> <remote>  //推送
    
    //eg. 将key.txt push到data下
    adb push key.txt /data/check
  9. 重启设备
    adb reboot
    //后面还有重启到何种模式,在高级用法中。
  10. 通过wifi连接/断开设备
    adb connect <device-ip>
    adb disconnect <device-ip>
    //设备ip通过 adb shell ifconfig获取
  11. 进入设备shell
    adb shell
    //进入shell后支持linux文件操作命令,ls、cd 、mv、cp、rm、mkdir、touch等
    //也可以直接adb shell rm xxx 类似这种使用,不进入到shell中。
  12. 查看版本
    adb version
  13. 查看帮助手册
    adb help
  14. 查看设备上运行的进程
    adb shell ps
    

adb命令高级用法

  1. 模拟按键输入
    adb shell input keyevent <key_code>
    //例如 adb shell input keyevent 5, 输入一个数字5等
  2. 获取设备屏幕截图
    adb shell screencap -p /sdcard/screenshot.png
    //存在设备sd卡中
    //可以通过基础用法中adb pull拉出
    adb pull /sdcard/screenshot.png
    
  3. 录制屏幕
    adb shell screenrecord /sdcard/demo.mp4
  4. 查看设备CPU信息
    adb shell cat /proc/cpuinfo
  5. 重启模式
    adb reboot bootloader //重启设备进入 bootloader 模式
    adb reboot recovery   //重启设备进入恢复模式

    Bootloader 模式是一个特殊软件界面,允许你对设备进行低级修改,例如:
        解锁 bootloader
        刷写自定义恢复
        安装自定义 ROM
        降级或升级固件

    注意:
        进入 bootloader 模式可能会擦除设备上的所有数据。请确保在继续之前已备份重要数据。
        并非所有设备都支持 bootloader 解锁。
        修改 bootloader 可能会使你的设备保修失效。

    恢复模式是一个特殊启动分区,允许你对设备进行故障排除和维护任务,例如:

        恢复出厂设置
        应用系统更新
        安装自定义 ROM 或恢复
        擦除缓存分区
        修复软件问题

  6. 手动安装OTA下载包
    adb sideload <file.zip>
    
    //adb sideload 命令用于将 OTA(空中下载)更新包(通常称为 sideload 包)手动安装到连接的Android 设备上。它允许你安装未通过 Google Play 商店提供的自定义 ROM、内核或其他软件更新。
    //<package.zip>:要安装的 OTA 更新包的路径。
    //要安装名为 lineage-19.1-20230214-nightly-raven-signed.zip 的 LineageOS 19.1 sideload 包,请使用以下命令:
    
    adb sideload lineage-19.1-20230214-nightly-raven-signed.zip
    
    
    //注意:
    //    设备必须处于恢复模式或允许 adb sideload 的自定义恢复模式中。
    //    sideload 包必须与设备的型号和当前软件版本兼容。
    //    sideload 过程可能需要一些时间,具体取决于包的大小和设备的速度。
    
  7. 启动设备上的程序或活动
    adb shell am start <package-name/activity-name>
  8. 强制停止设备上的应用程序
    adb shell am force-stop <package-name>
    //和上面的启动一般用于调试阶段
  9. 列出所有安装的包名
    adb shell pm list packages
    
    //只列出第三方应用包名
    adb shell pm list packages -3
  10. 查看性能指标
    adb shell top -m 5 //查看设备上CPU使用率最高的前5个进程
    //但其实这是linux top命令的用法,只是通过adb shell可以在设备外执行并反馈结果。
    
  11. 端口转发
    adb forward tcp:10000 tcp:5555
    //将设备上的端口转发到本地计算机的端口。这对于调试和访问设备上的服务非常有用。例如,要将设备上的端口 5555 转发到本地计算机上的端口 10000
  12. TCP 转发
    adb tcpip 5555
    adb connect localhost:5555
    //可以使用 ADB 在设备和本地计算机之间创建 TCP 连接。这对于与设备上的应用程序通信非常有用。例如,要创建从本地计算机端口 10000 到设备端口 5555 的 TCP 连接。
  13. 结束进程
    adb shell kill <pid>
    //可以通过进程ID(pid)来结束某个进程。
    //查看pid命令: adb shell ps
    
  14. 模拟屏幕触控
    adb shell input tap x y
    //在屏幕上模拟点击事件,其中x和y是屏幕坐标。
  15. 发送广播意图
    adb shell am broadcast -a <action>
  16. 记录设备触摸事件
    adb shell getevent
  17. 输入文本
    adb shell input text <text_string>
    //在当前焦点输入框中输入文本
  18. 查看设备网络连接状态
    adb shell netstat 
  19. 查看系统属性
    adb shell getprop
  20. 设置系统属性
    adb shell setprop <property> <value>

以上命令涵盖了日常开发使用到的百分之95以上,有遗漏后续想到再添加。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值