adb使用及常用命令

目录

介绍

组成

启用adb调试

常用命令

连接设备

版本信息

安装应用

卸载应用

文件操作

日志查看

屏幕截图和录制

设备重启

端口转发

调试相关

设置属性

设备信息查询

获取帮助

模拟输入


介绍

adb全称为 Android Debug Bridge(Android调试桥),是 Android SDK 中提供的用于管理Android 模拟器或真机的工具。

adb是一种功能强大的命令行工具,可让PC端与 Android 设备进行通信。用adb 命令可执行各种操作,如安装和调试 App。

组成

adb采用了客户端-服务器(C/S)模型,包括3个部分,如下图:

图片

adb 的 Client:当 adb运行在计算机上时,我们可以在命令行中通过 adb 命令来调用adb的客户端(Client)。Client本质上就是 Shell,它可以发送命令给 Server。

Client发送命令时,首先会检测PC上有没有启动Server,如果没有启动Server,则会自动启动一个Server,然后将命令发送到Server。

adb的Server:运行在计算机后台的进程,用于管理客户端与运行在模拟器或真机上的守护进程通信。

adb的 daemon:守护进程作为一个后台进程在Android设备或模拟器系统中运行,它的作用是连接 adb 服务端,并且为运行在主机上的 adb 客户端提供一些服务。

启用adb调试

Android 系统的移动设备(如手机)可以通过USB连接到adb,连接时需要在移动设备的系统设置中启用USB 调试(位于手机的开发者选项下),启动USB 调试后,设备上的adb守护进程就会被启动,adb服务端才可以和 Android 设备建立连接。

如果希望计算机连接 Android 模拟器或者真机,需要先打开 USB 调试开关。

(1)模拟器,不需要手动设置 USB 调试开关,默认就是打开的状态。

(2)真机设备,需要手动打开 USB 调试开关。

首先需要在计算机上安装Android 手机驱动,然后打开移动设备的设置应用,进入关于页面,然后开启 USB 调试模式

常用命令

ADB(Android Debug Bridge)是一个通用命令行工具,允许您与连接的Android设备进行通信。它提供了各种设备交互功能,如安装和调试应用程序、管理文件、执行shell命令等。以下是一些常用的ADB命令:

连接设备

adb devices:列出所有通过USB或网络连接的设备。

adb get-state:查看设备的连接状态。

adb connect <device_ip>:<port>:连接到网络上的设备。

版本信息

adb version:查看ADB工具的版本信息。

安装应用

adb install <path_to_apk>:在设备上安装一个APK文件。

adb shell pm list packages:查看设备上安装的所有应用包名。

adb install -r <path_to_apk>:重新安装应用并保留其数据。

卸载应用

adb uninstall <package_name>:卸载指定包名的应用程序。

adb uninstall -k <package_name>:卸载应用程序但保留其数据和缓存目录。

adb shell pm clear [包名]:清除指定应用的数据与缓存。

文件操作

adb push <local> <remote>:将本地文件复制到设备。

adb pull <remote> [<local>]:从设备复制文件到本地。

日志查看

adb logcat:查看设备的实时日志信息。

adb logcat -v time:打印带有时间戳的日志详情。

adb logcat -c:清除设备上的日志信息。

adb logcat > [文件路径]:将日志信息导出到本地文件。

adb bugreport > [文件路径]:生成并导出设备的bug报告。

屏幕截图和录制

adb shell screencap -p > screen.png:捕捉设备屏幕并保存为图片。

adb shell screenrecord <filename>.mp4:开始录制设备屏幕。

设备重启

adb reboot:重启设备。

adb reboot bootloader:重启进入bootloader模式。

adb reboot recovery:重启进入recovery模式。

端口转发

adb forward tcp:<host_port> tcp:<device_port>:将主机端口转发到设备端口。

Shell命令

adb shell:启动交互式shell会话。

adb shell <command>:在设备上执行单个shell命令。

调试相关

adb bugreport:生成并返回设备的bug报告。

设置属性

adb shell setprop <property> <value>:设置系统属性。

设备信息查询

adb shell getprop ro.build.version.release:获取设备的Android版本号。

adb shell cat /proc/cpuinfo:查看设备的CPU信息。

adb shell cat /proc/meminfo:查看设备的内存信息。

adb shell cat /sys/class/net/wlan0/address:查看设备的MAC地址(Wi-Fi)。

获取帮助

adb help:显示命令的帮助信息。

模拟输入

adb shell input text [文本]:模拟输入文本到设备。

adb shell input keyevent [事件代码]:模拟按键事件。

adb shell input tap [x轴坐标] [y轴坐标]:模拟点击屏幕上的指定坐标。

adb shell input swipe [起始x] [起始y] [结束x] [结束y] [持续时间]:模拟屏幕滑动操作

这些命令覆盖了ADB的主要功能,适用于日常的设备管理、应用调试、日志分析等多种场景。请注意,在使用某些命令(如adb root)时,可能需要设备的root权限或特定的解锁状态。同时,为了确保命令的正确执行,建议在执行前仔细核对设备状态、命令格式和参数。

阅读后若有收获,不吝关注,分享,在看等操作!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/949322.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

y7000p2023AX211ubuntu20无线网卡驱动

网卡检测 查看无线网卡驱动,本教程适用的网卡为Intel Corporation Device[8086:51f1],即AX211 lspci -nn | grep Net这里的Ethernet controller是有线网卡&#xff0c;Network controller是无线网卡&#xff0c;Intel corporation Device指英伟达网卡对应的设备号是[8086:51f1]…

链表OJ题(一)

(一&#xff09;轮转数组 . - 力扣&#xff08;LeetCode&#xff09; 题目描述&#xff1a;给定一个整数数组 nums&#xff0c;将数组中的元素向右轮转 k 个位置&#xff0c;其中 k 是非负数。 示例一&#xff1a; 方法一&#xff1a;暴力求解 先用一个变量存储数组中的最后…

Python如何精准定位并修改MP4文件的mvhd原子

深入了解MP4文件的结构对于安全地修改元数据非常重要。MP4文件采用基于原子&#xff08;atom&#xff09;的结构组织数据&#xff0c;每个原子代表一种特定的信息或数据块。例如&#xff0c;moov原子包含了视频的元数据信息&#xff0c;mvhd原子包含了视频的头信息&#xff0c;…

[SMARTFORMS] 系统变量的使用

在PAGE1页面节点下创建WINDOW5窗口 填写WINDOW5窗口描述以及位置&#xff0c;大小等相关信息 在WINDOW5窗口节点下新建TEMPLATE模板 为TEMPLATE模板设置行列相关信息 在TEMPLATE模板节点下面新增3个TEXT文本 每个TEXT文本的内容如下所示&#xff1a; %TEXT25 打印日期文本内容 …

C盘清理方法大全

目录 方法1&#xff1a;系统磁盘清理 方法2&#xff1a;找到存储删除 方法3&#xff1a;使用第三方软件Dism 方法4&#xff1a;关闭虚拟内存功能 方法5&#xff1a;磁盘分区扩展 方法1&#xff1a;系统磁盘清理 第一步&#xff1a;「此电脑 」- 「本地磁盘C」&#xff0c…

计算机的错误计算(二百零三)

摘要 利用两个大模型化简计算 其中一个大模型是数学解题器&#xff0c;它通过化简得出了正确结果&#xff1b;另外一个大模型给出了 Python代码。 例1. 化简计算摘要中算式。 下面是一个数学解题器大模型给的回答。 以上是数学解题器大模型给的回答。 下面是与另外一个大模型…

【JVM】总结篇之GC日志分析 和 案例

文章目录 GC日志参数GC日志格式GC日志分类MinorGCFullGC 文件概念 OOMOOM案例1&#xff1a;堆溢出OOM案例2&#xff1a;元空间溢出OOM案例3&#xff1a;GC overhead limit exceededOOM案例4&#xff1a;线程溢出 GC日志参数 GC日志格式 GC日志分类 MinorGC MinorGC(或young …

ASP.NET Core 中服务生命周期详解:Scoped、Transient 和 Singleton 的业务场景分析

前言 在 ASP.NET Core 中&#xff0c;服务的生命周期直接影响应用的性能和行为。通过依赖注入容器 (Dependency Injection, DI)&#xff0c;我们可以为服务定义其生命周期&#xff1a;Scoped、Transient 和 Singleton。本文将详细阐述这些生命周期的区别及其在实际业务中的应用…

Redis中字符串和列表的区别

在 Redis 中&#xff0c;字符串&#xff08;String&#xff09;和列表&#xff08;List&#xff09;是两种截然不同的数据类型&#xff0c;它们各自有着独特的特点和适用场景。 数据结构 • 字符串&#xff08;String&#xff09;&#xff1a; • 在 Redis 中&#xff0c;字符串…

正则表达式{}和(),pyhton里的正则表达式,函数findall解析

前言&#xff1a;哈喽&#xff0c;大家好&#xff0c;今天给大家分享一篇文章&#xff01;并提供具体代码帮助大家深入理解&#xff0c;彻底掌握&#xff01;创作不易&#xff0c;如果能帮助到大家或者给大家一些灵感和启发&#xff0c;欢迎收藏关注哦 &#x1f495; 目录 正则…

Angular由一个bug说起之十三:Cross Origin

跨域 想要了解跨域&#xff0c;首要要了解源 什么是源&#xff0c;源等于协议加域名加端口号 只有这三个都相同&#xff0c;才是同源&#xff0c;反之则是非同源。 比如下面这四个里&#xff0c;只有第4个是同源 而浏览器给服务器发送请求时&#xff0c;他们的源一样&#xff0…

x86霸权难动摇!

快科技1月6日消息&#xff0c;根据市场研究机构ABI Research的最新报告&#xff0c;尽管2025年被视为Arm PC市场扩张的关键一年&#xff0c;但搭载Arm架构处理器的PC预计仅占PC总出货量的13%。 ABI Research的分析师指出&#xff0c;尽管高通最新的PC处理器在性能和AI功能上有…

STM32的LED点亮教程:使用HAL库与Proteus仿真

学习目标&#xff1a;掌握使用STM32 HAL库点亮LED灯&#xff0c;并通过Proteus进行仿真验证&#xff01; 建立HAL库标准工程 1.新建工程文件夹 新建工程文件夹建议路径尽量为中文。建立文件夹的目的为了更好分类去管理项目工程中需要的各类工程文件。 首先需要在某个位置建立工…

mongodb==安装prisma连接

官网下载mongodb,解压安装 Download MongoDB Community Server | MongoDB 修改bin/mongod.cfg # mongod.conf# for documentation of all options, see: # http://docs.mongodb.org/manual/reference/configuration-options/# Where and how to store data. storage:dbPat…

前端工程化之手搓webpack5 --【elpis全栈项目】

前端工程化之手搓webpack5 --【elpis全栈项目】 导读 基本流程&#xff1a;输入 – 编译 – 输出 #mermaid-svg-V8Gi7RFNikCuEhax {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-V8Gi7RFNikCuEhax .error-icon{fil…

云备份项目--服务端编写

文章目录 7. 数据管理模块7.1 如何设计7.2 完整的类 8. 热点管理8.1 如何设计8.2 完整的类 9. 业务处理模块9.1 如何设计9.2 完整的类9.3 测试9.3.1 测试展示功能 完整的代码–gitee链接 7. 数据管理模块 TODO: 读写锁&#xff1f;普通锁&#xff1f; 7.1 如何设计 需要管理…

深入了解 ES6 Map:用法与实践

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

大润发易主,被阿里割肉卖了

文丨白念云 零售行业2025年伊始便迎来一则重磅消息&#xff1a;大润发被卖了。 1月1日晚&#xff0c;阿里巴巴集团发布公告&#xff0c;宣布子公司及NewRetail与德弘资本达成交易&#xff0c;以最高约131.38亿港元出售所持高鑫零售&#xff08;大润发母公司&#xff09;全部股…

VulnHub—potato-suncs

使用命令扫描靶机ip arp-scan -l 尝试访问一下ip 发现一个大土豆没什么用 尝试扫描一下子域名 没有发现什么有用的信息 尝试扫描端口 namp -A 192.168.19.137 -p- 尝试访问一下端口,发现都访问不进去 查看源代码发现了网页的标题 potato&#xff0c;就想着爆破一下密码 hydr…

docker学习记录:commit,制作自己的镜像

1.清除所有 ktkt-SYS-4028GR-TR2:~$ sudo docker rm -f $(sudo docker ps -aq)2.再操作一次tomcat,修改好&#xff0c;再打成一外镜像 ktkt-SYS-4028GR-TR2:~$ sudo docker images REPOSITORY TAG IMAGE ID CREATED SIZE tomcat 9.0 3…