Android命令行使用

Android命令行使用

一、常用命令格式

adb 命令的基本语法如下:

adb [-d|-e|-s ] 

如果只有一个设备/模拟器连接时,可以省略掉 [-d|-e|-s ] 这一部分,直接使用 adb

为命令指定目标设备

如果有多个设备/模拟器连接,则需要为命令指定目标设备。

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

在多个设备/模拟器连接的情况下较常用的是 -s 参数,serialNumber 可以通过 adb devices 命令获取。如:

$ adb devices

List of devices attached
cf264b8f    device
emulator-5554   device
10.129.164.6:5555   device

输出里的 cf264b8femulator-555410.129.164.6:5555 即为 serialNumber。

比如这时想指定 cf264b8f 这个设备来运行 adb 命令获取屏幕分辨率:

adb -s cf264b8f shell wm size

又如想给 10.129.164.6:5555 这个设备安装应用(这种形式的 serialNumber 格式为 :,一般为无线连接的设备或 Genymotion 等第三方 Android 模拟器):

adb -s 10.129.164.6:5555 install test.apk

遇到多设备/模拟器的情况均使用这几个参数为命令指定目标设备

二、adb命令

  1. 查看连接设备
    $ adb devices

  2. 安装软件
    $adb install <路径>
    如果需要强制安装(应用已存在,强制安装新应用)
    $adb install -r <路径>

  3. 卸载软件
    $adb uninstall <软件包名>

  4. 查看设备日志
    $adb logcat
    清除设备日志
    $adb logcat -c
    将设备日志输出到本地文件
    $adb logcat -v time > <文件路径>

  5. 查看屏幕分辨率
    $adb shell wm size

  6. 查看屏幕密度
    $adb shell wm density

  7. 推送文件到设备
    $adb push <本地文件路径> <设备文件路径>

  8. 推送设备文件到本地
    $adb pull <设备文件路径,如:/data/anr> <本地路径,如:D:,若不写则到当前路径>

  9. 远程连接设备
    $adb connect

  10. 获取序列号
    $adb get-serialno

  11. 重启设备
    $adb reboot

  12. 重启设备进入bootloader,即刷机模式
    $adb reboot bootloader

  13. 重启设备进入recovery,即恢复模式
    $adb reboot recovery

  14. 查看设备CPU和内存占用情况
    $adb shell top

  15. 查看进程列表
    $adb shell ps

  16. 杀死一个进程
    $adb shell kill

  17. system分区重新挂载为可读写分区
    $adb remount

  18. 清除应用数据与缓存
    $adb shell pm clear

  19. 模拟键值输入
    $adb shell input keyevent <键值ID>

keycode 含义
3 HOME 键
4 返回键
24 增加音量
25 降低音量
  1. 模拟滑动
    $adb shell input swipe <起始X> <起始Y> <结束X> <结束Y>

  2. 模拟输入
    $adb shell input text <输入文字>

  3. 内核日志
    $adb shell dmesg

三、Android Shell命令

  1. am命令
    1.1 启动应用/ 调起 Activity
    $adb shell am start -n <包名>/<类名>
    1.2 调起 Service
    $adb shell am startservice -n <包名>/<类名>
    1.3 发送广播
    $adb shell am broadcast -a

  2. dumpsys命令
    2.1 查看前台 Activity
    $adb shell dumpsys activity activities | grep mFocusedActivity
    2.2 查看正在运行的 Services
    $adb shell dumpsys activity services []
    2.3 查看应用详细信息
    $adb shell dumpsys package

  1. pm命令
    3.1 列出设备上面的应用
    $adb shell pm list package
    可以带参数 -s(系统应用),-3(第三方应用),-f(列出包名及位置),-i(列出包名及来源)
    3.2 清除应用数据与缓存
    $adb shell pm clear

  2. 截图录屏命令
    $adb shell screencap -p
    $adb shell screenrecord
    $adb exec-out screencap -p > <本地文件路径>

  3. 获取当前界面控件信息
    $adb shell uiautomator dump

  4. 查看文件夹大小
    $df -sh

  5. 查看所有文件夹大小
    $df -m (-k)

四、Linux命令

Linux命令需要在adb shell后进入设备后执行,或者和adb shell 一起执行,常见的命令有:cat、cd、chmod、cp、date、df、du、grep、kill、ln、ls、lsof、netstat、ping、ps、rm、rmdir、top、touch、重定向符号 ">"  ">>"、管道 "|"
命令 功能
cat 显示文件内容
cd 切换目录
chmod 改变文件的存取模式/访问权限
cp 复制文件
df 查看磁盘空间使用情况
grep 过滤输出
kill 杀死指定 PID 的进程
ls 列举目录内容
mount 挂载目录的查看和管理
mv 移动或重命名文件
ps 查看正在运行的进程
rm 删除文件
top 查看进程的资源占用情况
sync 同步更新
du 查看文件夹大小

你可能感兴趣的:(Android命令行使用)