IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> ADB的使用-简单命令 -> 正文阅读

[移动开发]ADB的使用-简单命令

今天记录的是 Android Debug Bridge,安卓debug调试桥,它是一款测试/开发人员必不可少的利器。作为一名测试人员,今天主要了解它在测试中简单的应用命令。
ADB是一个C/S架构(默认端口号为:5037),由三部分组成:ADB Client 、ADB Server、ADB Demo,运行过程如下图所示:
在这里插入图片描述

主要应用:

1、连接设备

  • 数据线直接连接服务器

  • 无线连接:1、将手机与电脑用usb连接,CMD输入: adb tcpip 5555 监听TCP/IP连接;2、断开usb连接,CMD输入: adb connect 移动端ip连接;3、CMD输入:adb devices查看是否连接成功

  • 断开连接:C:\Users\melot>adb disconnect

2、查看设备是否已连接: adb devices

Microsoft Windows [版本 10.0.19042.1052]
(c) Microsoft Corporation。保留所有权利。

C:\Users\melot>adb devices

List of devices attached
7fc0e0f2        device


C:\Users\melot>

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

adb [-d|-e|-s <serialNumber>] <command>

3、查看Android app的log,排查出现的问题:

在发现问题后,打印出带具体时间日期的日志,存放于D盘的log202106231609.txt中
执行命令打开文件,根据出错的时间以及标志性关键字exception、fatal、error等定位出错点

Microsoft Windows [版本 10.0.19042.1052]
(c) Microsoft Corporation。保留所有权利。

C:\Users\melot>adb logcat -v threadtime -d >D:\log202106231609.txt

C:\Users\melot>start D:\log202106231609.txt

C:\Users\melot>

4、测试模拟重启设备

C:\Users\melot>adb reboot

C:\Users\melot>

5、测试模拟强制停止应用

C:\Users\melot>adb shell am force-stop com.melot.kkcxlive

C:\Users\melot>

6、查看应用详细信息

C:\Users\melot>adb shell dumpsys package com.melot.kkcxlive

7、查看应用的安装路径

C:\Users\melot>adb shell pm path com.melot.kkcxlive
package:/data/app/com.melot.kkcxlive-1/base.apk

C:\Users\melot>

8、获取安卓设备的版本信息

C:\Users\melot>adb shell getprop ro.build.version.release
7.1.2

C:\Users\melot>

9、使用 Monkey 进行压力测试

C:\Users\melot>adb shell monkey -p com.melot.kkcxlive -v 500

10、安装软件至APP

C:\Users\melot>adb install C:\Users\melot\Downloads\JJYP_v2.0.1_0623_11`42`16_release.apk

11、获取设备id

adb shell settings get secure android_id

12、查看应用列表

adb shell pm list packages [-f] [-d] [-e] [-s] [-3] [-i] [-u] [--user USER_ID] [FILTER]

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

13、清除应用数据和缓存

adb shell pm clear <packagename>

14、复制电脑里的文件到设备

adb push <电脑上的文件路径> <设备里的目录>

15、模拟按键操作

点击屏幕坐标为x = 50 y = 250的地方:

adb shell input tap 50 250

滑动屏幕解锁:

adb shell input swipe 起始x 起始y 终止x 终止y

输入文本:

adb shell input text hello

其它按键操作:

db shell input keyevent

3 HOME 键
4 返回键
5 打开拨号应用
6 挂断电话
24 增加音量
25 降低音量
26 电源键
27 拍照(需要在相机应用里)
64 打开浏览器
82 菜单键
85 播放/暂停
86 停止播放
87 播放下一首
88 播放上一首
122 移动光标到行首或列表顶部
123 移动光标到行末或列表底部
126 恢复播放
127 暂停播放
164 静音
176 打开系统设置
187 切换应用
207 打开联系人
208 打开日历
209 打开音乐
210 打开计算器
220 降低屏幕亮度
221 提高屏幕亮度
223 系统休眠
224 点亮屏幕
231 打开语音助手
276 如果没有 wakelock 则让系统休眠

16、查看日志

Android日志的优先级(由高到低):
S-slient (啥也不输出)
F-fatal
E-error
W-waring
I-info
D-debug
V-verbose

按某级别过滤日志,将该级别及以上的日志输出(以下例子会将 Warning、Error、Fatal 和 Silent 日志输出):

adb logcat *:W

按 tag 和级别过滤日志(以下例子表示输出 tag ActivityManager 的 Info 以上级别日志,输出 tag MyApp 的 Debug 以上级别日志,及其它 tag 的 Silent 级别日志(即屏蔽其它 tag 日志)):

adb logcat ActivityManager:I MyApp:D *:S

日志格式:

adb logcat -v <format>

brief 默认格式: <priority>/<tag>(<pid>): <message>
process : <priority>(<pid>) <message>
tag: <priority>/<tag>: <message>
raw:<message>
time:<datetime> <priority>/<tag>(<pid>): <message>
threadtime:<datetime> <pid> <tid> <priority> <tag>: <message>
long: [ <datetime> <pid>:<tid> <priority>/<tag> ] <message>

清空日志:

adb logcat -c

17、查看设备信息

查看手机型号:

adb shell getprop ro.product.model

查看手机电池情况:

adb shell dumpsys battery

屏幕分辨率:

adb shell wm size

查看屏幕密度:

adb shell wm density

查看显示屏参数:

adb shell dumpsys window displays

查看Android-id:

adb shell settings get secure android_id

查看Android系统版本:

adb shell getprop ro.build.version.release

查看设备ip地址:

adb shell ifconfig "| grep Mask"

查看局域网MAC地址:

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

查看移动网或其它连接信息:

adb shell netcfg

查看cpu信息:

adb shell cat /proc/cpuinfo

查看内存信息:

adb shell cat /proc/meminfo

查看其它硬件与系统属性:
方法一:

adb shell cat /system/build.prop

方法二:

adb shell getprop <属性名>

ro.build.version.sdk SDK 版本
ro.build.version.release Android 系统版本
ro.build.version.security_patch Android 安全补丁程序级别
ro.product.model 型号
ro.product.brand 品牌
ro.product.name 设备名
ro.product.board 处理器型号
ro.product.cpu.abilist CPU 支持的 abi 列表[节注一]
persist.sys.isUsbOtgEnabled 是否支持 OTG
dalvik.vm.heapsize 每个应用程序的内存上限
ro.sf.lcd_density 屏幕密度

18、修改设置

修改分辨率:

adb shell wm size 480x1024

恢复原分辨率:

adb shell wm size reset

修改屏幕密度:

adb shell wm density 160

恢复屏幕密度:

adb shell wm density reset

修改显示区域:

adb shell wm overscan 0,0,0,200

恢复显示区域:

adb shell wm overscan reset

19、屏幕截屏保存到电脑

adb exec-out screencap -p > sc.png

20、录制屏幕(以 mp4 格式保存到 /sdcard)

adb shell screenrecord /sdcard/filename.mp4

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

adb pull /sdcard/filename.mp4

21、查看连接过的wifi密码:

adb shell
su
cat /data/misc/wifi/*.conf

22、设置系统日期和时间:

adb shell
su
date -s 20160823.131500

23、检测设备是否已 root

adb shell
su

24、开启/关闭 WiFi

开启:

adb root
adb shell svc wifi enable

关闭:

adb root
adb shell svc wifi disable

设置wifi优先:

adb shell svc wifi prefer 

25、开启/关闭数据流量

关闭:

svc data disable

开启:

adb shell svc data enable 

优先数据流量,其次wifi:

adb shell svc data prefer

26、刷机相关

重启到Recovery 模式:

adb reboot recovery

从 Recovery 重启到 Android:

adb reboot

重启到 Fastboot 模式:

adb reboot bootloader

27、查看进程

adb shell ps

28、查看实时资源占用情况

adb shell top

PID: 进程 ID
PR: 优先级
CPU%: 当前瞬间占用 CPU 百分比
S: 进程状态(R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
#THR: 线程数
VSS Virtual Set Size: 虚拟耗用内存(包含共享库占用的内存)
RSS Resident Set Size: 实际使用物理内存(包含共享库占用的内存)
PCY: 调度策略优先级,SP_BACKGROUND/SPFOREGROUND
UID: 进程所有者的用户 ID
NAME: 进程名

29、查看进程uid

方法一:

adb shell dumpsys package <packagename> | grep userId=

方法二:通过 ps 命令找到对应进程的 pid

adb shell cat /proc/<pid>/status | grep Uid

30、端口号被占用

1、找到使用该端口的进程Pid

C:\Users\melot>netstat -aon|findstr 5037

2、通过PID找到对应的进程名

C:\Windows\system32>tasklist /fi "PID eq 1中的pid号"

3、使用命令终止该命令的运行

C:\Users\wwx229495>taskkill /pid 1中的pid号 /f
  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2021-10-16 19:45:19  更:2021-10-16 19:46:59 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 23:04:38-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码