当前位置: 首页 > news >正文

实用工具系列-ADB使用方式

作者持续关注 WPS二次开发专题系列,持续为大家带来更多有价值的WPS开发技术细节,如果能够帮助到您,请帮忙来个一键三连,更多问题请联系我(WPS二次开发QQ群:250325397),摸鱼吹牛嗨起来!

目录

一、设备相关

查看设备

对指定设备操作

通过WiFi连接电脑和手机

重启设备

向手机输入框输入内容

二、APP信息分析相关

查看当前顶层应用包名和activity名称信息

查看手机应用版本信息

获取顶层界面的布局信息

查看Activity栈信息

截图

录屏

查看APP应用信息列表

三、文件操作

导出文件到电脑目录

将电脑文件导入到手机目录

安装apk到手机

四、调式开发相关

清除应用数据

卸载应用

暂停进程添加断点

清除进程启动断点中断

重启adb进程

monkey命令

五、日志分支

抓取基本日志

导出crash或者anr日志


一、设备相关

查看设备

adb devices

说明: 23a1d87b是设备唯一标识

对指定设备操作

adb -s <serial number> shell ls /sdcard
如:adb -s 23a1d87b shell ls /sdcard
说明: -s后面传设备唯一标识,如果只连接了一台设备,则"-s"参数可以省略,示例如下:

通过WiFi连接电脑和手机

前提:手机和电脑在同一局域网,如连接同一WiFi
adb tcpip 5555
adb connect <手机 ip>如:adb tcpip 5555adb connect 10.226.10.68

重启设备

adb reboot
重启指定设备: adb -s 23a1d87b reboot

向手机输入框输入内容

adb shell input text xxx
如:adb shell input text abc
说明:前提是手机光标已聚焦输入框,输入命令后,内容会自动填充到输入框中。

二、APP信息分析相关

查看当前顶层应用包名和activity名称信息

Android10之前:adb shell dumpsys window windows | findstr mCurrent
Android10或者之后:adb shell dumpsys window windows | findstr mObscuringWindow
说明: 通过命令输出的信息可以看出顶层应用包名和activity的完整类名

查看手机应用版本信息

adb shell pm dump <package name> | findstr "versionName"

获取顶层界面的布局信息

adb shell uiautomator dump <target sdcard dir>
如:adb shell uiautomator dump /sdcard/ui.xml,将当前布局信息导出到/sdcard,生成的文件名为:ui.xml,将该文件导出到电脑即可打开查看

查看Activity栈信息

#查看Activity栈信息的时候打印出来的一个LRU的Activity列表,搜关键字:Visible recent tasks (most recent first)
adb shell dumpsys activity

截图

adb shell /system/bin/screencap -p /sdcard/screenshot.png

录屏

adb shell screenrecord /sdcard/demo.mp4

查看APP应用信息列表

 adb shell pm list packages

三、文件操作

导出文件到电脑目录

adb pull <mobile src file> <pc target file>
如:adb pull /sdcard/ui.xml d:\test\

将电脑文件导入到手机目录

adb push <pc src file> <mobile target file>
如: adb push d:/test/ui.xml /sdcard/ui.xml

安装apk到手机

adb install <-r> <-t> <file path>
参数说明: -r: 覆盖安装; -t: 安装debug模式app

四、调式开发相关

清除应用数据

adb shell pm clear <package name>
如:adb shell pm clear com.xxx.xxx

卸载应用

adb uninstall <packagename>
如:adb uninstall com.xxx.xxx

暂停进程添加断点

adb shell am set-debug-app -w <process name>
如: adb shell am set-debug-app -w com.xxx.xx
说明:调试多进程很有帮助,先执行后,当指定进程启动时会弹出系统对话框暂时,直到在AndroidStudio中添加断点为止,对应用启动分析非常有帮助。

清除进程启动断点中断

adb shell am clear-debug-app
说明:退出进程启动中断后,后面进程再启动就不会有中断系统对话框了。

重启adb进程

adb kill-server
说明: 有时adb出现问题后需重启adb进程,通过该命令可快速重启adb进程。

monkey命令

#对系统设置应用和计算器应用进行monkey测试共发送500个随机事件
adb shell monkey your.package.name 500

五、日志分支

抓取基本日志

adb logcat –b radio > <pc target path>
adb logcat –b system > <pc target path>
adb logcat –b events > <pc target path>
adb logcat –b main > <pc target path>
参数说明: -b: 抓取指定类型的日志> path: 将日志内容输入到指定的文件
如:adb logcat –b main > d:\test\test.log

导出crash或者anr日志

adb bugreport
说明:导出是zip文件,里面包含了crash、anr和一些墓碑日志。

相关文章:

实用工具系列-ADB使用方式

作者持续关注 WPS二次开发专题系列&#xff0c;持续为大家带来更多有价值的WPS开发技术细节&#xff0c;如果能够帮助到您&#xff0c;请帮忙来个一键三连&#xff0c;更多问题请联系我&#xff08;WPS二次开发QQ群:250325397&#xff09;&#xff0c;摸鱼吹牛嗨起来&#xff0…...

计算机网络书籍--《网络是怎样连接的》阅读笔记

第一章 浏览器生成信息 1.1 生成HTTP请求信息 1.1.1 URL Uniform Resource Locator, 统一资源定位符。就是网址。 不同的URL能够用来判断使用哪种功能来访问相应的数据&#xff0c;比如访问Web服务器就要用”http:”&#xff0c;而访问FTP服务器用”ftp:”。 FTP&#xff…...

antd+vue——datepicker日期控件——禁用日期功能

需求&#xff1a;今天之前的日期禁用 <a-date-pickerv-model.trim"formNE.deliveryTime":disabled-date"disabledDate"valueFormat"YYYY-MM-DD"allowClearstyle"width: 100%" />禁用日期的范围&#xff1a; //时间范围 disab…...

技术分享 | Appium 用例录制

下载及安装 下载地址&#xff1a; github.com/appium/appi… 下载对应系统的 Appium 版本&#xff0c;安装完成之后&#xff0c;点击 “Start Server”&#xff0c;就启动了 Appium Server。 在启动成功页面点击右上角的放大镜&#xff0c;进入到创建 Session 页面。配置好…...

[蓝桥杯 2018 省 A] 付账问题

【蓝桥杯】付账问题 [蓝桥杯 2018 省 A] 付账问题 题目描述 几个人一起出去吃饭是常有的事。但在结帐的时候&#xff0c;常常会出现一些争执。 现在有 n n n 个人出去吃饭&#xff0c;他们总共消费了 S S S 元。其中第 i i i 个人带了 a i a_i ai​ 元。幸运的是&#…...

设计模式|装饰器模式(Decorator Pattern)

文章目录 结构优缺点优点缺点适用场景示例装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许在不改变原始对象的基础上,动态地给对象添加新的功能或责任。这种模式是通过创建一个包装对象,也就是装饰器,来包裹真实的对象,然后在装饰器中添加新的行为或功能。这…...

发作性睡病有性别差异吗?

发作性睡病是一种特殊的睡眠障碍&#xff0c;以不可控制的嗜睡、猝倒发作、睡眠瘫痪、入睡前幻觉以及夜间睡眠紊乱为主要临床特点。关于发作性睡病是否存在性别差异&#xff0c;不同的研究和报道给出了不同的结论。 一方面&#xff0c;从生理角度来看&#xff0c;男性和女性在…...

ppt从零基础到高手【办公】

第一章&#xff1a;文字排版篇01演示文稿内容基密02文字操作规范03文字排版处理04复习&作业解析第二章&#xff1a;图形图片图表篇05图形化表达06图片艺术化07轻松玩转图表08高效工具&母版统一管理09复习&作业解析10轻松一刻-文字图形小技巧速学第三章&#xff1a;…...

文件上传下载

文章目录 文件上传下载文件上传文件下载 文件上传下载 HTTP请求会包含一个请求头&#xff0c;其中"Content-Type"字段告诉服务器正在发送什么类型的数据。根据发送的数据类型&#xff0c;浏览器和服务器会采取适应的处理方式。 "multipart/form-data"是一…...

C++11 新特性:新增算法

C11 在标准库中引入了一系列新的算法&#xff0c;这些新增的算法使我们的代码写起来更简洁方便。 下面是 C11 中新增加的一些重要算法的简要描述和使用方法&#xff1a; 1、非修改序列操作 std::all_of&#xff1a;检查范围内的所有元素是否都满足指定的谓词。std::any_of&a…...

c/c++普通for循环学习

学习一下 for 循环的几种不同方式&#xff0c;了解一下原理及差异 完整的测试代码参考 GitHub &#xff1a;for 循环测试代码 1 常用形态 对于 for 循环来说&#xff0c;最常用的形态如下 for (表达式1; 表达式2; 表达式3) {// code }流程图如下&#xff1a; 编写测试代码…...

操作系统组成部分

从1946年诞生第一台电子计算机。 冯诺依曼结构 冯诺依曼是&#xff1a;数字计算机的数制采用二进制&#xff1b;计算机应该按照程序顺序执行。 常见的操作系统有三种类型 单用户单任务操作系统&#xff1a;只支持一个用户和一个任务的执行&#xff0c;如DOS&#xff1b;单用…...

深入理解DES算法:原理、实现与应用

title: 深入理解DES算法&#xff1a;原理、实现与应用 date: 2024/4/14 21:30:21 updated: 2024/4/14 21:30:21 tags: DES加密对称加密分组密码密钥管理S盒P盒安全性分析替代算法 DES算法简介 历史 DES&#xff08;Data Encryption Standard&#xff09;算法是由IBM研发&…...

# 达梦sql查询 Sql 优化

达梦sql查询 Sql 优化 文章目录 达梦sql查询 Sql 优化注意点测试数据单表查询 Sort 语句优化优化过程 多表关联SORT 优化函数索引的使用 注意点 关于优化过程中工具的选用&#xff0c;推荐使用自带的DM Manage&#xff0c;其它工具在查看执行计划等时候不明确在执行计划中命中…...

Linux下SPI驱动:SPI设备驱动简介

一. 简介 Linux下的SPI 驱动框架和 I2C 很类似&#xff0c;都分为主机控制器驱动和设备驱动&#xff0c;主机控制器也就是 SOC的 SPI 控制器接口&#xff0c;SPI设备驱动也就是所操作的SPI设备的驱动。 本文来学习一下Linux下SPI设备驱动。 二. Linux下SPI驱动&#xff1a;SP…...

【简明图文教程】Node.js的下载、安装、环境配置及测试

文章目录 前言下载Node.js安装Node.js配置Node.js配置环境变量测试后言 前言 本教程适用于小白第一次从零开始进行Node.js的下载、安装、环境配置及测试。 如果你之前已经安装过了Node.js或删除掉了Node.js想重新安装&#xff0c;需要先参考以下博客进行处理后&#xff0c;再根…...

共模电感饱和与哪些参数有关?这些参数是如何影响共模电感的?

在做一个变频器项目&#xff0c;遇到一个问题&#xff0c;在30Hz重载超过一定1小时&#xff0c;CE测试结果超出限制&#xff0c;查找原因最终发现EMI filter内的共模电感加热&#xff0c;fail现象可以复现。最终增大Y电容把问题解决了。由此问题引申出一个问题&#xff0c;到底…...

儿童护眼台灯怎么选?五款必选的高口碑护眼台灯推荐

儿童台灯&#xff0c;想必大家都不会陌生了&#xff0c;是一种学生频繁使用的小灯具&#xff0c;一般指放在桌面用的有底座的电灯。随着近年来儿童青少年的视力急速下滑&#xff0c;很多家长都会选择给孩子选择一款合适的护眼台灯&#xff0c;以便孩子夜晚学习能有个好的照明环…...

前端小技巧之轮播图

文章目录 功能htmlcssjavaScript图片 设置了一点小难度&#xff0c;不理解的话&#xff0c;是不能套用的哦&#xff01;&#xff01;&#xff01; &#xff08;下方的圆圈与图片数量不统一&#xff0c;而且宽度是固定的&#xff09; 下次写一些直接套用的&#xff0c;不整这些麻…...

手动实现简易版RPC(上)

手动实现简易版RPC(上) 前言 什么是RPC&#xff1f;它的原理是什么&#xff1f;它有什么特点&#xff1f;如果让你实现一个RPC框架&#xff0c;你会如何是实现&#xff1f;带着这些问题&#xff0c;开始今天的学习。 本文主要介绍RPC概述以及一些关于RPC的知识&#xff0c;为…...

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

多云管理“拦路虎”:深入解析网络互联、身份同步与成本可视化的技术复杂度​

一、引言&#xff1a;多云环境的技术复杂性本质​​ 企业采用多云策略已从技术选型升维至生存刚需。当业务系统分散部署在多个云平台时&#xff0c;​​基础设施的技术债呈现指数级积累​​。网络连接、身份认证、成本管理这三大核心挑战相互嵌套&#xff1a;跨云网络构建数据…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

【杂谈】-递归进化:人工智能的自我改进与监管挑战

递归进化&#xff1a;人工智能的自我改进与监管挑战 文章目录 递归进化&#xff1a;人工智能的自我改进与监管挑战1、自我改进型人工智能的崛起2、人工智能如何挑战人类监管&#xff1f;3、确保人工智能受控的策略4、人类在人工智能发展中的角色5、平衡自主性与控制力6、总结与…...

椭圆曲线密码学(ECC)

一、ECC算法概述 椭圆曲线密码学&#xff08;Elliptic Curve Cryptography&#xff09;是基于椭圆曲线数学理论的公钥密码系统&#xff0c;由Neal Koblitz和Victor Miller在1985年独立提出。相比RSA&#xff0c;ECC在相同安全强度下密钥更短&#xff08;256位ECC ≈ 3072位RSA…...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动

一、前言说明 在2011版本的gb28181协议中&#xff0c;拉取视频流只要求udp方式&#xff0c;从2016开始要求新增支持tcp被动和tcp主动两种方式&#xff0c;udp理论上会丢包的&#xff0c;所以实际使用过程可能会出现画面花屏的情况&#xff0c;而tcp肯定不丢包&#xff0c;起码…...

什么是库存周转?如何用进销存系统提高库存周转率?

你可能听说过这样一句话&#xff1a; “利润不是赚出来的&#xff0c;是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业&#xff0c;很多企业看着销售不错&#xff0c;账上却没钱、利润也不见了&#xff0c;一翻库存才发现&#xff1a; 一堆卖不动的旧货…...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

ServerTrust 并非唯一

NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...