学会ADB,玩转AS

转自http://yifeiyuan.me/2016/06/30/ADB%E5%91%BD%E4%BB%A4%E6%95%B4%E7%90%86/

那些必须知道的ADB命令

科普: ADB的全称是Android Debug Bridge

熟练掌握ADB命令可以提高开发效率
以下记录一些比较常用的命令:

  • adb start-server
    启动adb服务,如果它没启动的话

  • adb kill-server
    关闭服务

  • adb devices
    查看所连接的设备以及设备所对应的序列号

  • adb install -r xxxx.apk
    安装app,需要注意的是如果连接了两台设备,则会报错,此时可以添加-s <serialNumber>来处理

  • adb uninstall packagename
    卸载app,有时候在手机上卸载App会出现数据清理不干净,导致App再也装不上了,这个时候可以敲命令来卸载

  • adb shell
    进入shell环境

  • adb shell pm clear packagename
    清除应用的数据,很常用吧?

  • adb shell am start -n packagename/packagename.activityname

    启动某个应用的某个Activity(以前调试老年机,那种Launcher上没有APP的机器,全靠它啊!!!!!!!)

  • adb connect <device-ip-address>
    连接到指定的ip,这个通常配合wifidebug

  • adb shell dumpsys activity top
    查看栈顶Activity,可以用来获取包名,可以用来查看其它app的包名

  • adb shell ps
    查看进程信息

  • adb shell pm list packages -f
    查看所有已安装的应用的包名

  • adb shell dumpsys activity
    dumpsys系列命令可以帮助我们查看各种信息
    am的状态 Activity Manager State

  • adb shell dumpsys package
    包信息 Package Information

  • adb shell dumpsys meminfo
    内存使用情况Memory Usage

  • adb pull <remote> <local>
    从手机复制文件出来,比如把Crash日志写在SD卡上,再pull到电脑上 或者 pull ANR的trace日志

  • adb push <local> <remote>
    向手机发送文件,比如测试热修复补丁~

    eg. adb push foo.txt /sdcard/foo.txt

  • adb shell cat /proc/cpuinfo
    查看手机CPU,可以看到手机架构(eg.ARMv7) 和几核处理器
    可以帮助我们选择so库,排查手机cpu架构相关的问题

不太常用的命令

  • adb shell df
    获取手机磁盘空间

  • adb shell getprop ro.build.version.release
    获取手机系统版本

  • adb shell dumpsys procstats
    Memory Use Over Time

  • adb shell dumpsys gfxinfo
    Graphics State

  • adb version
    查看adb版本

  • adb help
    进入adb帮助界面

### 如何在工作场景中熟练掌握和使用 ADB 工具 #### 什么是 ADB? Android Debug Bridge (ADB) 是 Android 开发者工具包中的核心组件之一,用于与 Android 设备交互。它支持多种功能,包括安装应用、调试应用程序、传输文件以及执行 shell 命令等[^1]。 #### 安装 ADB 要开始使用 ADB,需先下载并配置 Android SDK Platform Tools。可以通过以下命令验证是否成功安装: ```bash adb version ``` 如果显示版本号,则说明已正确安装[^2]。 #### 配置设备连接 为了使 ADB 能够识别设备,需要启用开发者模式并将 USB 调试打开。当通过 USB 连接设备时,可以运行以下命令来确认设备状态: ```bash adb devices ``` 此命令会列出当前连接的所有设备及其序列号[^3]。 #### 使用 ADB 的常见操作 以下是几个常见的 ADB 功能及其实现方法: - **安装 APK 文件** 可以利用 `install` 命令将本地的应用程序部署到目标设备上。 ```bash adb install path_to_apk_file.apk ``` - **卸载应用程序** 如果想移除某个特定包名的应用,可采用如下方式: ```bash adb uninstall package_name ``` - **查看日志信息** 日志对于排查问题至关重要,可通过 `logcat` 实现实时监控。 ```bash adb logcat ``` - **复制文件至/从设备** 利用 `push` 和 `pull` 命令可以在主机与设备间传递数据。 ```bash adb push local_path remote_path adb pull remote_path local_path ``` - **启动 Shell 终端** 若要深入探索设备内部环境或者自动化某些任务,可以直接进入远程终端。 ```bash adb shell ``` 以上每项指令都提供了强大的能力去管理和控制安卓装置,在日常开发维护过程中非常实用[^4]。 #### 提高工作效率的小贴士 熟悉快捷键组合能显著提升效率;另外编写脚本来批量处理重复性的作业也是不错的选择。例如创建一个简单的 bash 或 python 脚本自动完成一系列 adb 操作[^5]。 ```python import subprocess def run_adb_command(command): result = subprocess.run(['adb'] + command.split(), stdout=subprocess.PIPE) return result.stdout.decode('utf-8') print(run_adb_command("devices")) ``` 上述 Python 函数封装了一个通用接口调用任意 adb命令,并返回其输出结果作为字符串形式。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值