常用adb 命令
目录
一、常用简单的adb命令:
二、adb shell pm基本的命令:
三、adb shell am基本的命令:
四、关闭某项进程,以monkey为例:
五、最近12小时的资源情况:
六、录制屏幕命令:
七、截图命令:
八、input命令:
九、关于获取当前页面的信息:
十、生成当前页面的xml文本:
十一、打印页面的log信息:
十二、系统操作指令
十三、更多参考以下博客
一、常用简单的adb命令:
1、adb devices: 获取设备列表和设备的状态
2、adb get-state: 获取设备的状态(设备的状态有三种:device,设备连接正常;offline,连接出现异常,设备无响应;unknown,设备未连接;)
3、adb kill-server,adb start-server: 结束,启动adb服务
4、adb install -r: 覆盖安装应用(apk)
5、adb uninstall: 卸载应用(应用包名)
6、adb pull : 将设备上的文件复制到电脑上
7、adb push : 将电脑上的文件复制到设备上
8、adb reboot : 重启设备
9、adb connect : 远程连接设备
10、adb disconnect : 断开设备连接
二、adb shell pm基本的命令:
1、列出安装在设备上的应用
# adb shell pm list package -s 列出系统应用
# adb shell pm list package -3 列出第三方的应用
# adb shell pm list package -i 列出来源
# adb shell pm list package -f 列出包名和路径
2、列出应用apk的位置
# adb shell pm path packagename 列出应用apk的位置
3、列出应用的详细信息
# adb shell pm dump packagename 列出应用相关的信息
4、清除应用的缓存数据
# adb shell pm clear packagename 清除应用的缓存数据
5、安装卸载手机应用:
首先将test.apk文件push到手机目录中比如/data/local/tmp
# adb shell pm install /data/local/tmp/test.apk 安装
# adb shell pm install –r /data/local/tmp/test.apk 重新安装
# adb shell pm uninstall -k packagename 卸载,加k保留缓存数据
# adb shell pm install -d apk 允许降级安装
三、adb shell am基本的命令:
1、启动一个 Activity:
# adb shell am start -n activityname 启动一个 Activity
2、等待页面启动完成:
# adb shell am start -W activityname 等待页面启动完成
3、先停止应用再启动:
# adb shell am start -S activityname 先停止应用再启动
4、结束应用:
# am force-stop packagename 结束应用
1、监控应用数据:
# adb shell dumpsys cpuinfo cpu信息
# adb shell dumpsys meminfo 内存信息
# adb shell dumpsys power 电源信息
# adb shell dumpsys battery 电池信息
# adb shell dumpsys wifi wifi信息
# adb shell dumpsys notification 通知信息
# adb shell dumpsys activity 获取页面信息
四、关闭某项进程,以monkey为例:
杀死monkey进程:
# ps | grep monkey 查看monkey进程的pid
# kill pid 杀死monkey进程
五、最近12小时的资源情况:
# dumpsys procstats --hours 12 最近12小时的资源情况
六、录制屏幕命令:
# adb shell screenrecord /sdcard/demo.mp4 视频录制命令
可选参数:
1、限制录制时间:
参数: --time-limit
2、指定视频分辨率大小:
参数: --size
3、指定视频的比特率:
参数: --bit-rate
4、在命令行显示log:
参数: --verbose
七、截图命令:
# adb shell screencap -p /sdcard/screen.png 截图并保存到指定位置
八、input命令:
adb shell input:
<可选参数>
#text 输入文本
#keyevent 输入事件
#tap 点击
#swipe 滑动<坐标><坐标为原地,则是长按>
九、关于获取当前页面的信息:
# adb shell dumpsys activity top | findstr ACTIVITY 获取当前界面的Activity
# adb shell dumpsys activity | findstr mFocusedActivity 获取当前页面的activity
十、生成当前页面的xml文本:
# adb shell uiautomator dump [file] 获取当前页面的xml信息
text 控件中显示的文本内容
class 控件的类型
package 包名
content-desc 说明
checkable 是否允许check
checked check状态
clickable 是否允许click
enabled 控件状态
focusable 是否允许获取焦点
focused 是否获取到焦点
scrollable 是否允许滚动
long-clickable 是否允许长安
password 是否是密码控件
selected select状态
bounds 控件绘制的长宽及位置 四个数据,分成两组,分别是 左上坐标和右下坐标
十一、打印页面的log信息:
# logcat -s ActivityManager 打印页面的log信息
十二、系统操作指令
adb shell getprop ro.product.model 获取设备型号
adb shell getprop ro.build.version.release 获取设备 Android 系统版本
adb get-serialno 获取设备的序列号(设备号)
adb shell wm size 获取设备屏幕分辨率
adb shell dumpsys activity |find "mFocusedActivity" 查看前台应用包名,适用于 Android 7.0 以下,必须先启动 app
adb shell dumpsys activity |find "mResumedActivity" 查看前台应用包名,适用于 Android 8.0 以上,必须先启动 app
十三、更多参考以下博客
ADB 操作命令详解及用法大全_Lucas__liu的博客-CSDN博客
相关文章:
常用adb 命令
目录 一、常用简单的adb命令: 二、adb shell pm基本的命令: 三、adb shell am基本的命令: 四、关闭某项进程,以monkey为例: 五、最近12小时的资源情况: 六、录制屏幕命令: 七、截图命令&am…...
后端开发常犯的问题(Java版)
数据类型使用不当 ——钱相关的计算,数据类型必须用BigDecimal 1.很多开发在做金额计算时会使用double数据类型,自测一些常用场景认为double是满足需求的因而图省事直接使用此数据类型。使用double类型存在金额精度丢失的风险,涉及到钱的数据…...
Vue CLI 部署
通用指南 如果你用 Vue CLI 处理静态资源并和后端框架一起作为部署的一部分,那么你需要的仅仅是确保 Vue CLI 生成的构建文件在正确的位置,并遵循后端框架的发布方式即可。 如果你独立于后端部署前端应用——也就是说后端暴露一个前端可访问的 API&…...
客快物流大数据项目(一百一十七):网关 Spring Cloud Gateway
文章目录 网关 Spring Cloud Gateway 一、简介 1、功能特性...
fMRI时间序列振幅和相位对功能连接分析的影响
导读 目的:fMRI领域的一些研究使用瞬时相位(IP)表征(源自BOLD时间序列的解析表征)考察了脑区之间的同步性。本研究假设来自不同脑区的瞬时振幅(IA)表征可以为脑功能网络提供额外的信息。为此,本研究探索了静息态BOLD fMRI信号的这种表征,用于…...
备战2个月,四轮面试拿下字节offer...
背景 菜 J 一枚,本硕都是计算机(普通二本),2021 届应届硕士,软件测试方向。个人也比较喜欢看书,技术书之类的都有看,最后下面也会推荐一些经典书籍。 先说一下春招结果:拿下了四个…...
关于Nginx
一、常见的“服务器中间件”(即http server-web中间件)有哪些 Tomcat、Jboss、Apache、WeBlogic、Jetty、webSphere、Nginx、IIS 二、nginx的特点 1.性能高,能承受5万并发每秒; 2.内存、磁盘,读取消耗空间小。 三、…...
tensorflow中的共享变量
(1)用途 在构建模型时,需要使用tf.Variable来创建一个变量(也可以理解成节点)。但在某种情况下,一个模型需要使用其他模型创建的变量,两个模型一起训练。此时需要用到共享变量。这时就是通过引…...
flink cep数据源keyby union后 keybe失效
问题背景:cep模板 对数据源设置分组条件后,告警的数据,和分组条件对不上, 掺杂了,其他的不同组的数据,产生了告警 策略条件: 选择了两个kafka的的topic的数据作为数据源, 对A 数据…...
python中的继承与多态,dir()函数
Python继承 在继承关系中,已有的、设计好的类称为父类或基类,新设计的类称为子类或派生类。派生类可以继承父类的公有成员,但是不能继承其私有成员。如果需要在派生类中调用基类的方法,可以使用内置函数super()或者通过“基类名.…...
C++练级之初级:第五篇
C练级之初级:第五篇 第五篇 C练级之初级:第五篇1.auto关键字2.for循环改进3.指针空值nullptr4.内联函数4.1内联函数的概念4.2内联函数的注意点 总结 1.auto关键字 🤔什么是auto(automatic的缩写,自动的意思)关键字? au…...
JMeter的使用(二)
九、直连数据库 通过直连数据库让程序代替接口访问数据库,如果二者预期结果不一致,就找到了程序缺陷。 获取某条学院的名字,放在百度搜索: JMeter 不具备直连数据库功能,必须整合第三方(jar包)实现配置数据库的连接通过JDBC Re…...
C/C++文件操作/IO流
学习任务: ⭐认识文件。⭐学习C语言中文件如何打开和关闭。⭐学习C语言中文件的读写方法(包括顺序读写和随机读写)。⭐学习C语言文件操作中如何判断文件读取结束。⭐简单了解FILE缓冲区。⭐认识流。⭐学习C的IO流,包括标准IO流和文…...
推荐 7 个超牛的 Spring Cloud 实战项目
个 把一个大型的单个应用程序和服务拆分为数个甚至数十个的支持微服务,这就是微服务架构的架构概念,通过将功能分解到各个离散的服务中以实现对解决方案的解耦。 关于微服务相关的学习资料不多,而 GitHub 上的开源项目可以作为你微服务之旅…...
Linux信号:信号 信号集 信号集函数
1. 信号的概念 Linux进程间通信的方式之一。信号也称为“软件中断”。 信号特点: 简单;携带信息有限;满足特定条件才发送信号;可进行用户空间和内核空间进程的交互; 信号4要素: (1…...
详解八大排序算法-附动图和源码(插入,希尔,选择,堆排序,冒泡,快速,归并,计数)
目录 🍏一.排序的概念及应用🍏 1.排序的概念 2.排序的应用 3.常用的排序算法 🍎二.排序算法的实现🍎 1.插入排序 1.1直接插入排序 1.2希尔排序(缩小增量排序) 2.选择排序 2.1直接选择排序 2.2堆排序…...
网络编程--协议、协议族、地址族
写在前面 这里先介绍下socket函数(Windows版本)的函数声明,后续内容均围绕该声明展开: #include <winsock2.h> //af: 指定该套接字的协议族 //type: 指定该套接字的数据传输方式 //protocol: 指定该套接字的最终协议 //返…...
Linux入门操作
pwd 查看当前目录 与 自动补全 文件详情 drwxrwxr-x d代表文件夹 -代表文件 其中rwx rwx r-x r是可读 w是可写 x 执行 第一组(前三个)指文件拥有者的权限 第二组(中三个)代表文件拥有的组的权限 第三组(后三个&am…...
1。C语言基础知识回顾
学习嵌入式的C基础知识,主要包括几个核心知识点:三大语法结构、常用的数据类型、函数、结构体、指针、文件操作。 一、顺序结构 程序自上而下依次执行、没有分支、代码简单。 常见顺序结构有:四则运算:,-࿰…...
学习如何通过构建一个简单的JavaScript颜色游戏来操作DOM
学习如何通过构建一个简单的JavaScript颜色游戏来操作DOM 题目要求 我们将构建一个简单的颜色猜谜游戏。每次游戏启动时,都会选择一个随机的RGB颜色代码。根据游戏模式,我们将在屏幕上提供三个(简单)或六个(困难&…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明
LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造,完美适配AGV和无人叉车。同时,集成以太网与语音合成技术,为各类高级系统(如MES、调度系统、库位管理、立库等)提供高效便捷的语音交互体验。 L…...
接口测试中缓存处理策略
在接口测试中,缓存处理策略是一个关键环节,直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性,避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明: 一、缓存处理的核…...
深度学习在微纳光子学中的应用
深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向: 逆向设计 通过神经网络快速预测微纳结构的光学响应,替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
R语言AI模型部署方案:精准离线运行详解
R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...
【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...
ServerTrust 并非唯一
NSURLAuthenticationMethodServerTrust 只是 authenticationMethod 的冰山一角 要理解 NSURLAuthenticationMethodServerTrust, 首先要明白它只是 authenticationMethod 的选项之一, 并非唯一 1 先厘清概念 点说明authenticationMethodURLAuthenticationChallenge.protectionS…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
k8s业务程序联调工具-KtConnect
概述 原理 工具作用是建立了一个从本地到集群的单向VPN,根据VPN原理,打通两个内网必然需要借助一个公共中继节点,ktconnect工具巧妙的利用k8s原生的portforward能力,简化了建立连接的过程,apiserver间接起到了中继节…...
