当前位置:   article > 正文

adb常用命令_adb 命令配置

adb 命令配置

      adb全称为Android Debug Bridge,是一个debug工具。

      借助adb工具,我们可以管理设备或手机模拟器的状态,还可以进行很多手机操作,如安装软件、系统升级、运行shell命令…等等。

对于我们在使用adb常用命令的时候,又该如何配置adb环境变量?直通车给大家放下面了。

adb配置环境变量【直通车】

adb常用命令

引言

本文为自身学习总结的一些adb的常用命令,可能一些命令有待验证,更多内容可以参考adb用法大全
详情如下:

Android
List of ADB Commands and Fastboot Commands for Android

在这里插入图片描述

Android Debug Bridge (ADB) Commands Manual

在这里插入图片描述

基本用法

语法命令

adb 命令的基本语法如下:

adb [ -d| -e| -s <sericalNumber>] <command>
  • 1

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

为命令指定目标设备

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

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

常用版

查看adb版本号

adb version
  • 1

查看已连接设备

adb devices
  • 1

查看手机序列号

adb get-serialno
如返回127.0.0.1:7555
  • 1
  • 2

查看日志

adb logcat

adb logcat -c 清除日志

adb logcat | grep “tag” 过滤日志    这里的tag就是你打印日志的时候需要设置的第一个参数TAG,通过TAG我们可以很轻松的过滤出我们想要的日志,轻松高效。

安装apk

adb install [apk文件的路径]

adb install douyin.apk

  • 多个设备安装apk

adb -s [设备号] install [apk文件的路径]

adb -s 127.0.0.1:7555 install douyin.apk

  • 如果apk已经存在,需要覆盖安装
  • adb install -r [apk文件的路径]

adb install -r douyin.apk

adb install后面可以跟一些可选参数来控制安装APK的行为,可选参数及含义如下

参数含义
-l将应用安装到保护目录 /mnt/asec
-r允许覆盖安装
-t允许安装AndroidMainfest.xml里application指定android:testOnly="true"的应用
-s应用安装到sdcard
-d允许降级覆盖安装
-g授予所有运行时权限
--abi abi-identifier为特定ABI强制安装apk,abi-identifier可以是armeabi-v7a、arm64-v8a、v86、x86_64 等

卸载apk

  • 普通卸载
  • adb uninstall [apk文件的路径]

adb uninstall douyin.apk

  • 卸载但是保留数据
  • adb uninstall -k [apk文件的路径]

adb uninstall -k douyin.apk

以root权限运行adbd

adb的运行原理是PC端的adb server 与手机端的守护进程adbd 建立连接,然后PC端的adb client通过adb server转发命令,adbd接收命令后解析运行。

所以如果adbd以普通权限执行,有些需要root权限才能执行的命令无法直接用adb xxx执行。这时可以adb shell 然后 su后执行命令,也可以让adbd以root权限执行,这个就能随意执行高权限命令了。

adb root
正常输出:restarting adbd as root
现在再运行 adb shell,看看命令行提示符是不是变成 # 了?
有些手机 root 后也无法通过 adb root 命令让 adbd 以 root 权限执行,比如三星的部分机型,会提示 adbd cannot run as root in production builds,此时可以先安装 adbd Insecure,然后 adb root 试试。
相应地,如果要恢复 adbd 为非 root 权限的话,可以使用 adb unroot 命令。

连接不稳定时需要挂载

adb remount
  • 1

重启手机

  • 正常重启
adb reboot
  • 1
  • 重启手机到recovery
adb reboot recovery
  • 1
  • 重启到bootloader界面
adb reboot bootloader
  • 1

通过slideload更新系统

如果我们下载了Android设备对应的系统更新包到电脑上,那么可以通过adb来完成更新 。
以Recovery模式下更新为例:
1.重启到Recovery模式。
命令:

adb reboot recovery
  • 1

2.在设备的Recovery界面上操作进入Apply update-Apply from ADB
注:不同的 Recovery 菜单可能与此有差异,有的是一级菜单就有 Apply update from ADB。
3.通过adb上传和更新系统。
命令:

adb sideload <path-to-update.zip>
  • 1

关闭adb服务

adb kill-server
  • 1

启动adb服务

adb start-server
  • 1

查看手机设备型号

adb shell getprop ro.product.model
如返回MI 8
  • 1
  • 2

查看设备的Android版本

adb shell getprop ro.build.version.release
  • 1

获取手机厂商名称

adb shell getprop ro.product.brand
如返回Xiaomi
  • 1
  • 2

获取手机SDK版本

adb shell getprop ro.build.version.sdk
  • 1

查看手机分辨率

adb shell wm size
  • 1

查看屏幕密度

adb shell wm density

修改屏幕密度

adb shell wm density 160

恢复原屏幕密度

adb shell wm density reset

查看手机的mac地址

adb shell cat /sys/class/net/wlan0/address
  • 1

查看电池信息

adb shell dumpsys battery
  • 1

查看进程

adb shell ps
  • 1

查看CPU使用情况

adb shell top
  • 1

CPU信息

adb shell cat /proc/cpuinfo
  • 1

内存信息

adb shell cat /proc/meminfo
  • 1

查看应用的安装路径

adb shell pm path <packagename>
  • 1

我手机QQ的安装路径
在这里插入图片描述

查看手机上所有安装的app包名

adb shell pm list packages

adb shell pm list packages -s 查看所有系统app的包名

adb shell pm list packages -3 查看所有第三方app的包名

adb shell pm list packages | grep [包名] 使用grep筛选所有满足要求的app包名

参数显示列表
所有应用
-f显示应用关联的apk文件
-d只显示disabled的应用
-e只显示enabled的应用
-s只显示系统应用
-3只显示第三方应用
-i显示应用的installer
-u包含已卸载应用
<FILTER>包名包含<FILTER> 字符串

查看应用详细信息

adb shell dumpsys package <packagename>
  • 1

清除应用数据

adb shell pm clear

当你只是想要清除一个apk的某些数据来复现某些操作的时候,这个命令就显得额外重要。它可以避免我们重装apk来完成这个操作。

获取某个应用包名的启动入口

  • adb shell dumpsys package com.ss.android.ugc.aweme|findstr activity
  • com.ss.android.ugc.aweme/com.ss.android.sdk.activity.BootstrapActivity
    这个就是抖音的入口

adb shell dumpsys package com.ss.android29111
com.ss.android.ugc.aweme/com.ss.android.sdk.activity.BootstrapActivity

屏幕截屏

adb shell screencap [保存路径]

adb shell screencap /sdcard/screen.png

也可以使用(adb版本太老的话,需要更新adb)

adb exec-out screencap  > sc.png
  • 1

录制视频

adb shell screenrecord [保存路径]
  • 1

上传文件到手机

adb push [电脑文件路径] [手机文件保存路径]

adb push douyin.apk sdcard/douyin.apk

从手机端下载文件

adb pull [手机上文件路径]
注意:此时没有指定上传到电脑的路径,会默认上传到adb程序所在的路径

adb pull sdcard/douyin.apk

指定上传路径:adb pull [手机上文件的路径] [电脑文件的路径]

adb pull /storage/emulated/0/app/txt.mp4 D:/ADB/tet.mp4

模拟屏幕点击事件

adb shell input tap x坐标轴 y坐标轴

adb shell input tap 500 1450

模拟手势滑动事件

adb shell input swipe 开始x轴 开始y轴 结束x轴 结束y轴 过程持续时间

adb shell input swipe 100 500 100 1450 100

模拟点击键盘按钮

adb shell input keyevent [key值]

adb shell input keyevent 25

一些常用的keyevent键值信息

keyevent效果
3Home键
4返回键
5拨号键
6挂机键
19向上
20向下
21向左
22向右
24音量加
25音量减
26电源
27拍照(需要在相机应用里)
64打开浏览器
66回车键
67退格键
82菜单键
84搜索键
85播放/暂停键
86停止播放
87播放上一首
88播放下一首
92向上翻页
93向下翻页
112删除键
115大写锁定键
122光标移动到开始键
123光标移动到末尾键
164静音
168放大键
169缩小键
176打开系统设置
187切换应用
220降低屏幕亮度
221提高屏幕亮度
223系统休眠
224点亮屏幕
231打开语音助手

向屏幕输入一些信息

  • db shell input text [字符串信息]
  • %s是空格

db shell input text “insert%stext%shere”

查看前台Activity

同时小编也是通过这种方式获取到应用包的入口
adb shell dumpsys activity activities | findstr mResumedActivity

获取到了QQ的启动入口
在这里插入图片描述

查看正在运行的Services

adb shell dumpsys activity services [<packagename>]
  • 1

<packagename> 参数不是必须的,指定 <packagename>表示查看与某个包名相关的 Services,不指定表示查看所有 Services。
<packagename> 不一定要给出完整的包名,比如运行 adb shell dumpsys activity services org.example,那么包名 org.example.demo1、org.example.demo2org.example123 等相关的 Services 都会列出来。

启动某个app

adb shell am start -n [包名]/[启动入口]

adb shel am start -n
com.ss.android.ugc.aweme/com.ss.android.sdk.activity.BootstrapActivity
Strating:Intent{cmp=com.ss.android.ugc.aweme/com.ss.android.sdk.activity.BootstrapActivity}

启动qq

adb shell am start -n com.tencent.mobileqq/.activity.SplashActivity
  • 1

启动有道词典
在这里插入图片描述

发送广播

adb shell am broadcast -a “broadcastactionfilter”

adb shell am broadcast -a “broadcastactionfilter”

使用自带浏览器打开网页

adb shell am start -a [浏览器包名] -d [网址]

adb shell am start -a “android.intent.action.VIEW” -d https://www.google.com

获取手机内部存储信息

adb shell df /data
  • 1

无线连接(需要借助USB连接线)

除了可以通过USB连接设备与电脑来使用adb,也可以通过无线连接——虽然连接过程中也有需要USB的步骤,但是连接成功之后你的设备就可以在一定范围内摆脱USB连接线的束缚了!

操作步骤
  1. 将 Android 设备与要运行 adb 的电脑连接到同一个局域网,比如连到同一个 WiFi。
  2. 将设备与电脑通过 USB 线连接。
    应确保连接成功(可运行 adb devices 看是否能列出该设备)。
  3. 让设备在 5555 端口监听 TCP/IP 连接:
adb tcpip 5555
  • 1
  1. 断开 USB 连接。
  2. 找到设备的 IP 地址。

一般能在「设置」-「关于手机」-「状态信息」-「IP地址」找到,也可以使用下文里 查看设备信息 - IP 地址的方法用 adb命令来查看。

IP 地址

每次想知道设备的 IP 地址的时候都得「设置」-「关于手机」-「状态信息」-「IP地址」很烦对不对?通过 adb 可以方便地查看。

命令:

adb shell ifconfig | grep Mask
  • 1

输出示例:

inet addr:10.130.245.230  Mask:255.255.255.252
inet addr:127.0.0.1  Mask:255.0.0.0
  • 1
  • 2

那么 10.130.245.230 就是设备 IP 地址。

在有的设备上这个命令没有输出,如果设备连着 WiFi,可以使用如下命令来查看局域网 IP:

adb shell ifconfig wlan0
  • 1

输出示例:

wlan0: ip 10.129.160.99 mask 255.255.240.0 flags [up broadcast running multicast]
  • 1

wlan0     Link encap:UNSPEC
          inet addr:10.129.168.57  Bcast:10.129.175.255  Mask:255.255.240.0
          inet6 addr: fe80::66cc:2eff:fe68:b6b6/64 Scope: Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:496520 errors:0 dropped:0 overruns:0 frame:0
          TX packets:68215 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:3000
          RX bytes:116266821 TX bytes:8311736
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

如果以上命令仍然不能得到期望的信息,那可以试试以下命令(部分系统版本里可用):

adb shell netcfg
  • 1

输出示例:

wlan0    UP                               10.129.160.99/20  0x00001043 f8:a9:d0:17:42:4d
lo       UP                                   127.0.0.1/8   0x00000049 00:00:00:00:00:00
p2p0     UP                                     0.0.0.0/0   0x00001003 fa:a9:d0:17:42:4d
sit0     DOWN                                   0.0.0.0/0   0x00000080 00:00:00:00:00:00
rmnet0   DOWN                                   0.0.0.0/0   0x00000000 00:00:00:00:00:00
rmnet1   DOWN                                   0.0.0.0/0   0x00000000 00:00:00:00:00:00
rmnet3   DOWN                                   0.0.0.0/0   0x00000000 00:00:00:00:00:00
rmnet2   DOWN                                   0.0.0.0/0   0x00000000 00:00:00:00:00:00
rmnet4   DOWN                                   0.0.0.0/0   0x00000000 00:00:00:00:00:00
rmnet6   DOWN                                   0.0.0.0/0   0x00000000 00:00:00:00:00:00
rmnet5   DOWN                                   0.0.0.0/0   0x00000000 00:00:00:00:00:00
rmnet7   DOWN                                   0.0.0.0/0   0x00000000 00:00:00:00:00:00
rev_rmnet3 DOWN                                   0.0.0.0/0   0x00001002 4e:b7:e4:2e:17:58
rev_rmnet2 DOWN                                   0.0.0.0/0   0x00001002 4e:f0:c8:bf:7a:cf
rev_rmnet4 DOWN                                   0.0.0.0/0   0x00001002 a6:c0:3b:6b:c4:1f
rev_rmnet6 DOWN                                   0.0.0.0/0   0x00001002 66:bb:5d:64:2e:e9
rev_rmnet5 DOWN                                   0.0.0.0/0   0x00001002 0e:1b:eb:b9:23:a0
rev_rmnet7 DOWN                                   0.0.0.0/0   0x00001002 7a:d9:f6:81:40:5a
rev_rmnet8 DOWN                                   0.0.0.0/0   0x00001002 4e:e2:a9:bb:d0:1b
rev_rmnet0 DOWN                                   0.0.0.0/0   0x00001002 fe:65:d0:ca:82:a9
rev_rmnet1 DOWN                                   0.0.0.0/0   0x00001002 da:d8:e8:4f:2e:fe
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21

可以看到网络连接名称、启用状态、IP 地址和 Mac 地址等信息。

  1. 通过 IP 地址连接设备。
adb connect <device-ip-address>
  • 1

<device-ip-address>你设备的ip地址

  1. 确认连接状态
adb devices
  • 1

如果能看到

<device-ip-address>:5555 device
  • 1

说明连接成功
如果连接不了,请确认 Android 设备与电脑是连接到了同一个 WiFi,然后再次执行 adb connect <device-ip-address> 那一步;
如果还是不行的话,通过 adb kill-server 重新启动 adb 然后从头再来一次试试。

断开无线连接

adb disconnect <device-ip-address>
  • 1

关于ADB IDEA

AS插件ADB IDEA,装了这款插件可以直接在AS中快速操作一些ADB命令

使用方式

  1. 双击shift -> 点击action ->搜索adb
    在这里插入图片描述

  2. Ctrl + Shift + A,快捷键直接调用
    在这里插入图片描述

一些琐碎小问题

不知应用包的入口Activity如何启动应用包

  1. 通过category
adb shell monkey -p <packagename> -c android.intent.category.LAUNCHER 1
  • 1
  1. adb获取应用包入口的方案

如何通过获取应用包的入口,开启一个应用?

  • 点开需要打开的应用,使用获取前台Activity命令
adb shell dumpsys activity activities | findstr mResumedActivity
  • 1

这样便能获得应用包的启动入口
比如,获取有道词典的启动入口

在这里插入图片描述

  • 使用adb启动应用包
adb shell am start -n [应用包名] /[入口]
  • 1

在这里插入图片描述

adb shell input text无法响应中文输入的问题

adb默认是不支持Unicode编码的,无法通过adb shell input text命令输入中文到手机或者模拟器。

adb shell input text不能输入中文的解决方案

  1. 安装ADBKeyBoard.apk文件(直接搜索就能找到)

打开手机或模拟器,adb install ADBKeyBoard.apk安装该输入法
在手机上直接安装也可

  1. 设置默认输入法

打开手机设置 -> 点击语法与输入法 -> 点击输入法管理 -> 启用ADBKeyboard
重启手机后即可使用该输入法

  1. 输入adb命令测试中文输入

adb shell am broadcast -a ADB_INPUT_TEXT --es msg ‘这是一段adb中文测试’

adb部分总结

与应用交互

主要是使用am<command>命令,常用的<command>如下:

command用途
start [options] <INTENT>启动 <INTENT> 指定的 Activity
startservice [options] <INTENT>启动 <INTENT> 指定的 Service
broadcast [options] <INTENT>发送 <INTENT> 指定的广播
force-stop <packagename>停止 <packagename> 相关的进程

<INTENT> 参数很灵活,和写 Android 程序时代码里的 Intent 相对应。

用于决定intent对象的选项如下:

参数含义
-a <ACTION>指定 action,比如 android.intent.action.VIEW
-c <CATEGORY>指定 category,比如 android.intent.category.APP_CONTACTS
-n <COMPONENT>指定完整 component 名,用于明确指定启动哪个 Activity,如 com.example.app/.ExampleActivity

<INTENT> 里还能带数据,就像写代码时的 Bundle 一样:

参数含义
--esn <EXTRA_KEY>null 值(只有 key 名)
--es <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE>string 值
--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE>boolean 值
--ei <EXTRA_KEY> <EXTRA_INT_VALUE>integer 值
--el <EXTRA_KEY> <EXTRA_LONG_VALUE>long 值
--ef <EXTRA_KEY> <EXTRA_FLOAT_VALUE>float 值
--eu <EXTRA_KEY> <EXTRA_URI_VALUE>URI
--ecn <EXTRA_KEY> <EXTRA_COMPONENT_NAME_VALUE>component name
--eia <EXTRA_KEY> <EXTRA_INT_VALUE>[,<EXTRA_INT_VALUE...]integer 数组
--ela <EXTRA_KEY> <EXTRA_LONG_VALUE>[,<EXTRA_LONG_VALUE...]long 数组

启动应用/调起Activity

指定Activity名称启动

命令格式:

adb shell am start [options] <INTENT>
  • 1

调起微信并传给它 string 数据键值对 toast - hello, world
在这里插入图片描述

不指定Activity名称启动(启动主Activity)

命令格式:

adb shell monkey -p <packagename> -c android.intent.category.LAUNCHER 1
  • 1

启动QQ
在这里插入图片描述

调起Service

命令格式:

adb shell am startservice [options] <INTENT>
  • 1

例如:
调起微信的某Service

adb shell am startservice -n com.tencent.mm/.plugin.accountsync.model.AccountAuthenticatorService
  • 1

另外一个典型的用例是如果设备上原本应该显示虚拟按键但是没有显示,可以试试这个:

adb shell am startservice -n com.android.systemui/.SystemUIService
  • 1

停止Service

命令格式:

adb shell am stopservice [options] <INTENT>
  • 1

发送广播

命令格式:

adb shell am broadcast [options] <INTENT>
  • 1

可以向所有组件广播,也可以向指定组件广播
例如,向所有组件广播:

adb shell am broadcast -a android.intent.action.BOOT_COMPLETED
  • 1

又例如,只向org.mazhuang.boottimemeasure/.BootCompletedReceiver广播

adb shell am broadcast -a android.intent.action.BOOT_COMPLETED -n org.mazhuang.boottimemeasure/.BootCompletedReceiver
  • 1

这类用法在测试的时候很实用,比如某个广播的场景很难制造,可以考虑通过这种方式来发送广播。
既能发送系统预定义的广播,也能发送自定义广播。如下是部分系统预定义广播及正常触发时机:
(均可使用adb触发)

action触发时机
android.net.conn.CONNECTIVITY_CHANGE网络连接发生变化
android.intent.action.SCREEN_ON屏幕点亮
android.intent.action.SCREEN_OFF屏幕熄灭
android.intent.action.BATTERY_LOW电量低,会弹出电量低提示框
android.intent.action.BATTERY_OKAY电量恢复了
android.intent.action.BOOT_COMPLETED设备启动完毕
android.intent.action.DEVICE_STORAGE_LOW存储空间过低
android.intent.action.DEVICE_STORAGE_OK存储空间恢复
android.intent.action.PACKAGE_ADDED安装了新的应用
android.net.wifi.STATE_CHANGEWiFi 连接状态发生变化
android.net.wifi.WIFI_STATE_CHANGEDWiFi 状态变为启用/关闭/正在启动/正在关闭/未知
android.intent.action.BATTERY_CHANGED电池电量发生变化
android.intent.action.INPUT_METHOD_CHANGED系统输入法发生变化
android.intent.action.ACTION_POWER_CONNECTED外部电源连接
android.intent.action.ACTION_POWER_DISCONNECTED外部电源断开连接
android.intent.action.DREAMING_STARTED系统开始休眠
android.intent.action.DREAMING_STOPPED系统停止休眠
android.intent.action.HEADSET_PLUG插入耳机
android.intent.action.MEDIA_UNMOUNTED卸载外部介质
android.intent.action.MEDIA_MOUNTED挂载外部介质
android.os.action.POWER_SAVE_MODE_CHANGED省电模式开启

强制停止应用

命令:

adb shell am force-stop <packagename>
  • 1

命令示例:

在这里插入图片描述

收紧内存

adb shell  am send-trim-memory <pid> <level>
  • 1

pid: 进程 ID level: HIDDEN、RUNNING_MODERATE、BACKGROUND、 RUNNING_LOW、MODERATE、RUNNING_CRITICAL、COMPLETE

命令示例:

adb shell am send-trim-memory 12345 RUNNING_LOW
  • 1

表示向 pid=12345 的进程,发出 level=RUNNING_LOW 的收紧内存命令。

修改设置

: 修改设置之后,运行恢复命令有可能显示仍然不太正常,可以运行 adb reboot 重启设备,或手动重启。
修改设置的原理主要是通过 settings 命令修改 /data/data/com.android.providers.settings/databases/settings.db 里存放的设置值。

分辨率

adb shell wm size 480x1024
  • 1

表示将分辨率修改为 480px * 1024px。
恢复:

adb shell wm size reset
  • 1

屏幕密度

adb shell wm density 160
  • 1

表示将屏幕密度修改为 160dpi。
恢复:

adb shell wm density reset
  • 1

显示区域

adb shell wm overscan 0,0,0,200
  • 1

四个数字分别表示距离左、上、右、下边缘的留白像素,以上命令表示将屏幕底部 200px 留白。
恢复:

adb shell wm overscan reset
  • 1

关闭USB调试

adb shell settings put global adb_enabled 0
  • 1

恢复:
用命令恢复不了了,毕竟关闭了 USB 调试 adb 就连接不上 Android 设备了。
去设备上手动恢复吧:「设置」-「开发者选项」-「Android 调试」。

允许/禁止访问非 SDK API:

不需要设备获得Root权限。
允许访问非 SDK API:

adb shell settings put global hidden_api_policy_pre_p_apps 1
adb shell settings put global hidden_api_policy_p_apps 1
  • 1
  • 2

禁止访问非 SDK API

adb shell settings delete global hidden_api_policy_pre_p_apps
adb shell settings delete global hidden_api_policy_p_apps
  • 1
  • 2

命令最后的数字的含义:

含义
0禁止检测非 SDK 接口的调用。该情况下,日志记录功能被禁用,并且令 strict mode API,即 detectNonSdkApiUsage() 无效。不推荐。
1仅警告——允许访问所有非 SDK 接口,但保留日志中的警告信息,可继续使用 strick mode API。
2禁止调用深灰名单和黑名单中的接口。
3禁止调用黑名单中的接口,但允许调用深灰名单中的接口。

实用功能

屏幕截图

:未指定路径则,默认为adb所在的文件夹
截图保存到电脑:

adb exec-out screencap -p > sc.png
  • 1

如果 adb 版本较老,无法使用 exec-out 命令,这时候建议更新 adb 版本。无法更新的话可以使用以下麻烦点的办法:
先截图保存到设备里:

adb shell screencap -p /sdcard/sc.png
  • 1

然后将 png 文件导出到电脑:
adb pull /sdcard/sc.png
可以使用adb shell screencap -h 查看 screencap 命令的帮助信息,下面是两个有意义的参数及含义:

参数含义
-p指定保存文件为 png 格式(如果指定文件后缀png,则可省略)
-ddisplay-id 指定截图的显示屏编号(有多显示屏的情况下)

录制屏幕

录制屏幕以mp4格式保存到 /sdcard:

adb shell screenrecord /sdcard/filename.mp4
  • 1

需要停止时按 Ctrl-C,默认录制时间和最长录制时间都是 180 秒。
如果需要导出到电脑:

adb pull /sdcard/filename.mp4
  • 1

可以使用 adb shell screenrecord --help 查看 screenrecord 命令的帮助信息,下面是常见参数及含义:

参数含义
–size WIDTHxHEIGHT视频的尺寸,比如 1280x720,默认是屏幕分辨率。
–bit-rate RATE视频的比特率,默认是 4Mbps。
–time-limit TIME录制时长,单位秒。
–verbose输出更多信息。

开启/关闭wifi

开启

adb shell svc wifi enable
  • 1

关闭

adb shell svc wifi disable
  • 1

使用Monkey进行压力测试

Monkey 可以生成伪随机用户事件来模拟单击、触摸、手势等操作,可以对正在开发中的程序进行随机压力测试。
简单用法:

adb shell monkey -p <packagename> -v 500
  • 1

表示向 <packagename> 指定的应用程序发送 500 个伪随机事件。
更多内容可见monkey官网


如果这份博客对铁们有所帮助,或能够使你产生共鸣的,请不要吝啬你的点赞关注哟,谢谢!!!
如果有什么疑问或不同的见解,欢迎评论区留言欧>_<…

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小惠珠哦/article/detail/873643
推荐阅读
相关标签
  

闽ICP备14008679号