adb 简介与常用命令

1. adb 简介

adb 的全称为 Android Debug Bridge,就是起到调试桥的作用。

借助 adb 工具,我们可以管理设备或手机模拟器的状态。还可以进行很多手机操作,如安装软件、系统升级、运行 shell 命令等等。其实简而言说,adb 就是连接 Android 手机与 PC 端的桥梁,可以让用户在电脑上对手机进行全面的操作。

通过 adb 我们也可以在 Eclipse 中方面通过 DDMS 来调试 Android 程序(即 debug 工具)。

adb 的工作方式比较特殊,采用监听 Socket TCP 5554 等端口的方式让 IDE 和 Qemu 通讯,默认情况下 adb 会 daemon 相关的网络端口,所以当我们运行 Eclipse 时 adb 进程就会自动运行。

 

2. adb 常用命令

查看设备

adb devices

这个命令是查看当前连接的设备, 连接到计算机的 android 设备或者模拟器将会列出显示。

查看手机系统版本

adb shell getprop ro.build.version.release

安装软件

adb install <apk文件路径>

这个命令将指定的apk文件安装到设备上

卸载软件

adb uninstall <软件名>
adb uninstall -k <软件名>

-k 参数表示卸载软件但是保留配置和缓存文件.

进入设备或模拟器的 shell

adb shell  # 进入 shell 中,执行各种 shell 命令
adb shell [command]  # 执行一条 shell 命令

通过上面的命令,就可以进入设备或模拟器的shell环境中,在这个 Linux Shell 中,你可以执行各种 Linux 的命令。另外

如果只想执行一条 shell 命令,可以采用以下的方式,如:adb shell dmesg 会打印出内核的调试信息。

发布端口

可以设置任意的端口号,做为主机向模拟器或设备的请求端口。如:

adb forward tcp:5555 tcp:8000

从电脑上发送文件到设备

adb push <本地路径> <远程路径>

用 push 命令可以把本机电脑上的文件或者文件夹复制到设备(手机)。

从设备上下载文件到电脑

adb pull <远程路径> <本地路径>

用 pull 命令可以把设备(手机)上的文件或者文件夹复制到本机电脑。

查看设备的 Log 日志

常用格式如下:

// 格式1:打印默认日志数据
adb logcat // 格式2:需要打印日志详细时间的简单数据
adb logcat -v time// 格式3:需要打印级别为Error的信息
adb logcat *:E// 格式4:需要打印时间和级别是Error的信息
adb logcat -v time *:E// 格式5:将日志保存到电脑固定的位置,比如D:\log.txt
adb logcat -v time > D:\log.txt

查看 bug 报告

adb bugreport

记录无线通讯日志

一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录:

adb shell
logcat -b radio

获取设备的 ID 和序列号

adb get-product
adb get-serialno

adb 服务器杀死和启动

adb kill-server
adb start-server

装包、卸载包

adb -s deviceid install <apk在PC端的路径>
adb shell pm install <apk在移动端的路径>
adb uninstall <包名>

与 Activity 操作等相关

1)获取当前启动 app 的包名:

adb shell dumpsys window w |findstr \/ |findstr name=

2)通过获取到的包名获取到启动 app 的 activity:

adb shell monkey -p 包名 -vvv 1

与进程相关

列出当前进程:

adb shell ps | findstr <包名>

杀死某个包的进程:

adb shell am force-stop <包名>

性能相关

获取内存:

adb shell dumpsys meminfo <包名>

获取 CPU:

adb shell dumpsys cpuinfo | findstr <包名>
adb shell top -n 1 | findstr <包名>

获取流畅度相关:

adb shell dumpsys gfxinfo <包名>

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阿里云-跨账号同步OSS Bucket

说明 阿里云A账号的OSS BUCKET同步到B账号的指定OSS BUCKET。 账号Bucket NamesRAM角色A{源buctket}OSS-SYNCERB{目标buctket} 步骤 在阿里云A,B账号分别建上表buckets, 最好是相同地域的在A号-RAM控制台建立角色OSS-SYNCER&#xff0c;并赋权AliyunOSSFullAccess&#xff…

uniapp小程序无感刷新token

request.js // request.js import {getApptoken,getStoredApptoken } from ./tokenRequest // 从合并模块导入// 全局配置 const MAX_RETRIES 1 // 最大重试次数 const baseURL https://your-api.com// 请求队列和刷新状态 let requestsQueue [] let isRefreshing false// …

MySQL优化高手笔记

语雀完整版&#xff1a;https://www.yuque.com/g/mingrun/embiys/dv3btw/collaborator/join?tokenzMBwPzSMfSGINLuv&sourcedoc_collaborator# 《MySQL优化高手笔记》MySQL优化高手一、MySQL架构01 天天写CRUD,你知道你的系统是如何跟MySQL打交道的吗通过驱动连接数据库&am…

Git 详解:从概念,常用命令,版本回退到工作流

本文将从 Git 的核心概念讲起&#xff0c;详细介绍常用命令、各阶段版本回退、分支控制以及企业内常见的 Git 工作流。 Git 与 GitHub 简介 Git 简介 Git 是一个开源的分布式版本控制系统&#xff0c;由 Linus Torvalds 于 2005 年开发。它与集中式版本控制系统&#xff08;…

CMSIS(Cortex Microcontroller Software Interface Standard)ARM公司为 Cortex-M 系列处理器

CMSIS&#xff08;Cortex Microcontroller Software Interface Standard&#xff09;是ARM公司为 Cortex-M 系列处理器&#xff08;如 M0/M3/M4/M7/M23/M33 等&#xff09;定义的一套硬件抽象层标准&#xff0c;旨在简化嵌入式开发&#xff0c;提高代码的可移植性和复用性。 核…

[特殊字符] 扫描式处理:Python 自动提取 PDF 中关键词相关表格并导出为 Excel

本文演示如何利用 pdfplumber 批量处理指定文件夹下 PDF 文档&#xff1a;定位关键词&#xff08;如“主要会计数据”&#xff09;出现的页码及下一页&#xff0c;提取其中的表格并保存为独立 Excel 文件。适用于财务报告、审计表格、统计报表等场景。 1️⃣ 第一步&#xff1a…

python3的返回值能返回多个吗?

在Python中&#xff0c;函数可以通过返回一个元组&#xff08;tuple&#xff09; 来间接实现返回多个值的效果。以下是具体说明&#xff1a; 实现方式&#xff1a;直接返回逗号分隔的值 Python会自动将这些值打包成一个元组&#xff1a; def multiple_return():a 1b "he…

UE5 Secondary Materials

首先放入材质A材质B放入Secondary Materials两个效果就能融合到一起了动态设置secondary material

AUTOSAR进阶图解==>AUTOSAR_SWS_FlashTest

AUTOSAR Flash Test模块详解与分析 基于AUTOSAR标准的Flash Test模块架构、功能与应用分析目录 1. Flash Test模块概述 1.1 模块作用与功能1.2 适用范围 2. Flash Test模块架构 2.1 模块位置2.2 组件关系 3. 状态管理 3.1 状态定义3.2 状态转换 4. 后台测试执行流程 4.1 测试间…

msf复现永恒之蓝

永恒之蓝&#xff08;EternalBlue&#xff09;是利用 Windows 系统的 SMB 协议漏洞&#xff08;MS17-010&#xff09;来获取系统最高权限的漏洞&#xff0c;利用 Metasploit 框架&#xff08;MSF&#xff09;复现该漏洞是一个复杂且具有一定风险的操作&#xff0c;必须在合法合…

格密码--LWE,DLWE和ss-LWE

格密码–LWE&#xff0c;DLWE和ss-LWE 0.数学符号数学符号含义备注Zq\mathbb{Z}_qZq​模qqq的整数集合&#xff0c;即{0,1,2,...,q−1}\{0,1,2,...,q-1\}{0,1,2,...,q−1}用于定义LWE、DLWE、ss-LWE等问题中矩阵和向量的元素取值范围&#xff0c;是基础整数环x∈RSx \in_R Sx∈…

【闭包】前端的“保护神”——闭包详解+底层原理

目录 一、闭包是什么&#xff1f;概念 二、闭包为什么存在&#xff1f;作用 1. 创建私有变量 2. 实现数据封装与信息隐藏 3. 模拟私有方法 4. 保存函数执行时的状态 5. 回调函数和事件处理 6. 模块化编程 7. 懒加载与延迟执行 三、闭包怎么用&#xff1f;实践业务场景 …

算法学习笔记:19.牛顿迭代法——从原理到实战,涵盖 LeetCode 与考研 408 例题

牛顿迭代法&#xff08;Newtons Method&#xff09;是一种强大的数值计算方法&#xff0c;由英国数学家艾萨克・牛顿提出。它通过不断迭代逼近方程的根&#xff0c;具有收敛速度快、适用范围广的特点&#xff0c;在科学计算、工程模拟、计算机图形学等领域有着广泛应用。牛顿迭…

小白学Python,操作文件和文件夹

目录 前言 一、操作文件路径 1.获取当前路径 2.创建文件夹 &#xff08;1&#xff09;mkdir()函数 &#xff08;2&#xff09;makedirs() 函数 3.拼接路径 4.跳转路径 5.判断相对路径和绝对路径 6.获取文件路径和文件名 二、操作文件和文件夹 1.查询文件大小 2.删除…

015_引用功能与信息溯源

引用功能与信息溯源 目录 引用功能概述支持的模型引用类型API使用方法引用格式应用场景最佳实践 引用功能概述 什么是引用功能 Claude的引用功能允许在回答基于文档的问题时提供详细的信息来源引用&#xff0c;帮助用户追踪和验证信息的准确性。这个功能特别适用于需要高可…

ROS2中的QoS(Quality of Service)详解

ROS2中的QoS&#xff08;Quality of Service&#xff09;详解1. 主要QoS参数2. 为什么需要设置QoS3. QoS兼容性规则4. 选择QoS策略的建议5. 调试QoS问题的方法6. 踩坑&#xff1a;订阅话题没有输出可能的原因&#xff1a;调试方法QoS是ROS2中用于控制通信质量和行为的机制。它定…

Cursor三大核心AI功能

一&#xff1a;Tab键&#xff1a;智能小助手 1.1 单行/多行代码补全 在代码中写出要实现的功能&#xff0c;第一次按Tab生成代码&#xff0c;第二次按Tab接受代码。1.2 智能代码重写 对已有代码重新编写。 写个注释告诉AI重构方法&#xff0c;然后鼠标点到方法内部&#xff0c;…

cesium添加原生MVT矢量瓦片方案

项目中需要基于cesium接入mvt格式的服务并支持属性拾取查询&#xff0c;通过一系列预研测试&#xff0c;最后选择cesium-mvt-imagery-provider开源插件完成&#xff0c;关键源码信息如下&#xff1a; npm i cesium cesium-mvt-imagery-provider //安装依赖包// 加载图层import…

AI金融风控:识别欺诈,量化风险的新利器

AI金融风控&#xff1a;识别欺诈&#xff0c;量化风险的新利器深度学习算法穿透海量交易数据&#xff0c;92.5%的不良贷款识别率宣告了金融风险防控新时代的来临。深圳桑达银络科技有限公司在2025年6月申请的“基于人工智能的金融交易反欺诈系统”专利&#xff0c;揭示了金融风…

【unitrix】 5.0 第二套类型级二进制数基本结构体(types2.rs)

一、源码 这是一个使用 Rust 类型系统实现类型级(type-level)二进制数的设计。 //! 类型级二进制数表示方案&#xff08;第二套方案&#xff09; //! //! 使用嵌套泛型结构体表示二进制数&#xff0c;支持整数和小数表示。use crate::sealed::Sealed;/// 类型级二进制数结构体 …