ADB命令用法大全
一、ADB简介
Android Debug Bridge,安卓调试桥,它借助adb.exe(Android SDK安装目录platform-tools下),用于电脑端与模拟器或者真实设备交互;使用adb命令需安装Android SDK,并配置环境变量;它是一个C/S架构的应用程序,由三部分组成:
- adb client:运行在PC上(为DDMS即IDE工作)
- adb daemon:守护进程,运行于Emulaor
- adb server:服务进程,运行在PC,管理adb client和adb daemon之间的通信
server与client通信的端口是5037,adb server与emulator交互时使用的端口有两个:
- 5554专门用于与Emulator实例的连接
- 5555专门用于与daemon连接
二、常用命令
1.基础用法
- 查看adb版本: adb version
- 重启adb服务:adb kill-server adb start-server
- 进入shell模式:adb shell
- 退出shell模式:exit
- 查看连接本台PC的设备列表:adb devices(unknown-没有设备;device-连接正常;offline-离线;unauthorized-未认证、需手动在手机上同意授权)
- 查看连接本台PC的设备列表(只展示设备ID):adb get-serialno

2.安装包相关
- 安装apk:adb install 安装包路径\包名
- 保留缓存和数据安装:adb install -r 安装包路径\包名
- 卸载apk,不保留数据和缓存:adb uninstall 包名
- 卸载apk,留数据和缓存:adb uninstall -k 包名
- 清除应用数据及缓存:adb shell pm clear 包名
- 查看当前设备已安装的apk列表:adb shell pm list packages -s
- 查看当前设备已安装的第三方apk列表:adb shell pm list packages -3

3.文件相关
- 电脑push文件到手机:adb push D:/a.txt /sdcard/
- 从手机拉取文件:adb pull /mnt/sdcard/51zxw.txt D:\a.txt
4.截屏录屏
- 截屏:adb shell screencap /sdcard/sca.png
- 录屏:adb shell screenrecord /sdcard/scr.mp4
- 录屏,指定分辨率:adb shell screenrecord --size 1280*720 /sdcard/scr.mp4
- 录屏,指定比特率:adb shell screenrecord --bite-rate 6000000 /sdcard/scr.mp4
5.进程相关
- 查看当前应用PID:adb shell ps | findstr 包名 (方式二:adb shell ps | grep 包名,高版本需加上双引号,即:adb shell "ps | grep 包名")
- 查看被测应用UID:adb shell cat /proc/$pid/status
- 杀死某个APP进程:adb shell am force-stop 包名;adb shell kill pid
- 实时监听某一进程变化:adb shell "top | grep pid"
- 查看pid进程查看包名:adb shell "ps | grep pid"

6.性能相关
- 获取当前应用占用内存:adb shell dumpsys meminfo 包名
- 获取当前应用占用CPU:adb shell dumpsys cpuinfo | findstr 包名
- 获取流畅度相关:adb shell dumpsys gfxinfo 包名
- 获取手机当前电量信息:adb shell dumpsys battery
7.Activity相关
- 显示当前运行APP的activity方法1:adb shell dumpsys activity | findstr "mFocusedActivity"
- 显示当前运行APP的activity方法2:adb shell dumpsys activity | findstr mCurrentFocus
- 获取手机内top Activity:adb shell dumpsys activity top | findstr ACTIVITY
- 根据启动的APP获取其包名和Activity:输入命令 adb logcat ActivityManager:I *:s,后启动APP,观察adb窗口打印情况
- 启动一个activity:adb shell am start activity路径,例:adb shell am start com.tencent.mm/.ui.LauncherUI
8.获取手机信息相关
- 获取设备名称:adb get-serialno
- 查看设备型号:adb shell getprop ro.product.model
- 查看Android系统版本:adb shell getprop ro.build.version.release
- 查看屏幕分辨率:adb shell wm size
- 查看屏幕密度:adb shell wm density
9.模拟器相关
- 显示系统中全部Android平台:android list targets
- 显示系统中全部AVD(模拟器):android list avd
- 创建AVD(模拟器):android create avd --name 名称 --target 平台编号
- 启动模拟器:emulator -avd 名称 -sdcard ~/名称.img (-skin 1280x800)
- 删除AVD(模拟器):android delete avd --name 名称
- 创建SDCard:mksdcard 1024M ~/名称.img
10.远程连接手机
①确保PC连接手机成功
②查看手机连接的WiFi地址(需保持和PC在同一个局域网内)
③命令行输入:
adb tcpip 5555
adb connect 192.168.2.45:5555(使用此方式连接后,设备名为192.168.2.45:5555)
11.ADB连接多台设备时指定设备操作
- 指定设备执行adb命令:adb -s 命令,如:adb -s b68a93e install D:\安装包\a.apk
- 指定设备执行shell命令:adb -s shell ,如:adb -s b68a93e shell "ps | grep com.tencent.mm"
ADB命令用法大全的更多相关文章
- 最全的ADB命令行大全(转)
基本用法 命令语法 adb 命令的基本语法如下: adb [-d|-e|-s ] 如果只有一个设备/模拟器连接时,可以省略掉 [-d|-e|-s ] 这一部分,直接使用 adb . 为命令指定目标设备 ...
- 玩转ADB命令(ADB命令使用大全)转载
ADB是什么 Adb的全称为Android Debug Bridge:android调试桥梁,下图为Android官方对adb的介绍:可以看出,Android的初衷是用adb这样的一个工具来协助开发人 ...
- ROM定制开发教程-Android adb命令用法与实例解析
一.什么是ADB Android Debug Bridge(adb)是一个命令行工具,可让您与模拟器或连接的Android设备进行通信.您可以在android sdk / platform-tools ...
- Linux中find命令用法大全
Linux 查找命令是Linux系统中最重要和最常用的命令之一.查找用于根据与参数匹配的文件指定的条件来搜索和查找文件和目录列表的命令.查找可以在各种条件下使用,您可以通过权限,用户,组,文件类型,日 ...
- Grep 命令 用法大全
查找x文件 find / -name "x*" -ls 查找文件中x所在的行数 grep -n "x" -r *find . -name "*.jav ...
- linux find命令用法大全
本文档格式如下,命令说明在命令的上一行,尝试使用 Ctrl+f 组合键快速在页面内搜索. 命令说明 命令 参数起始目录:查找文件的起始目录.实例# 当前目录搜索所有文件,文件内容 包含 &qu ...
- linux命令——Grep 命令 用法大全
1. 参数: -I :忽略大小写 -c :打印匹配的行数 -l :从多个文件中查找包含匹配项 -v :查找不包含匹配项的行 -n:打印包含匹配项的行和行标 2.RE(正则表达式) \ 忽略正则表达式中 ...
- 转帖: 一份超全超详细的 ADB 用法大全
增加一句 连接 网易mumu模拟器的方法 adb connect 127.0.0.1:7555 一份超全超详细的 ADB 用法大全 2016年08月28日 10:49:41 阅读数:35890 原文 ...
- 超全超详细的 ADB 用法大全
原文地址:原文地址 基本用法 命令语法 为命令指定目标设备 启动/停止 查看 adb 版本 以 root 权限运行 adbd 指定 adb server 的网络端口 设备连接管理 查询已连接设备/模拟 ...
随机推荐
- 好客租房4-react的基本使用 方法说明
2.2方法说明 React.createElement //第二步创建react元素 //参数1:元素名称 //参数2:元素属性 //参数3:元素的子节 ...
- 安装Supervisor到CentOS(YUM)
Supervisor是一个Linux下进程管理工具. Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为守护进程,并监控进程状态,异常退出时能自动重启,可以 ...
- django框架4
内容概要 编辑删除功能编写 虚拟环境 django路由层版本区别 视图函数的返回值 JsonResponse对象 form表单上传文件 request其他方法 FBV与CBV(基于函数的视图.基于类的 ...
- Linux Cgroup v1(中文翻译)(2):CPUSETS
英文原文:https://www.kernel.org/doc/html/latest/admin-guide/cgroup-v1/cpusets.html Copyright (C) 2004 BU ...
- SQL Server之自动创建视图
本方法只适合特定模式的视图创建. 比如,创建需要整张表列名的视图,或者当表和需要的列名统计在一张数据表当中,如图所示: 首先要先获取要创建视图所需要的表,这里我获取的是整个数据库中的表, IF OBJ ...
- neo4j删除节点和关系
两种方法: 一.用下列 Cypher 语句: match (n) detach delete n 原理:匹配所有的节点,然后进行删除. 二. 从文件系统上删除对应的数据库. 1.停掉服务: 2.删除 ...
- 如何写一个全局的 Notice 组件?
下面将会实现这样的效果: 组件动态创建脚本: NotificationBanner.js import Vue from "vue"; import Notice from &qu ...
- Swoole一键操作基于阿里云的RDS数据库迁移+OSS文件搬迁
传统的数据库搬迁思路是把数据库表的结构及数据都查询出来,然后通过循环进行数据结构重组拼接.然后导出!数据量少的话,这样当然是没毛病.当数据量太大的时候,服务器的内存开销就吃不住了,很容易炸掉,导致服务 ...
- 全球共有多少MySQL实例在运行?这里有一份数据
摘要 Shadowserver Foundation在5月31日发布了一份全网的MySQL扫描报告,共发现了暴露在公网的360万个MySQL实例.因为这份报告基数够大,而且信息也非常完整,从数据库专业 ...
- 数字图像处理-基于matlab-直方图均匀化,傅立叶变换,图像平滑,图像锐化
直方图均匀化 任务:用MATLAB或VC或Delphi等实现图像直方图均匀化的算法. clc;clear;close all; % 清除工作台 % path(path,'..\pics'); % 设置 ...