目录
ADB工具介绍
什么是ADB?
组成
主要功能
ADB工具安装与连接设备
WIFI连接,提示计算机积极拒绝10061
WIFI成功连接后,拔掉数据线显示offline
提示adb版本不一致编辑
ADB工具使用
★日志操作命令
adb logcat:抓取日志
日志格式
★input操作命令
常用命令
权限指令
获取包名的命令
当有多个设备时连接时
安装/卸载应用
上传/下载文件
ADB工具介绍
什么是ADB?
ADB 全称为 Android Debug Bridge,是 Android SDK 中的一个工具,起到调试桥的作用,是一个客户端-服务器端程序。其中客户端是用来操作的电脑,服务端是 Android 设备。
ADB 可以直接操作管理 Android 模拟器或者真实的 Android 设备。Android的初衷是用adb这样的一个工具来协助开发人员在开发android应用的过程中更快更好的调试apk,因此adb具有安装卸载apk、拷贝推送文件、查看设备硬件信息、查看应用程序占用资源、在设备执行shell命令等功能。
组成
客户端:用来发送命令。客户端在计算机上运行,通过发出adb命令从命令行终端调用客户端
守护程序(adbd):用于在设备上运行命令。守护程序在每个设备生作为后台进程运行
服务器:用于管理客户端与守护程序之间的通信。服务器在开发机器上作为后台进程运行
主要功能
adb实现用户在电脑上对android手机进行全面的操作
- 运行设备的shell(命令行)
- 管理模拟器或设备的端口映射
- 计算机和设备之间上传/下载文件
- 设备应用管理
ADB工具安装与连接设备
1.安装JDK环境(安装并设置环境变量)
1.1 下载JDK
1.2 配置环境变量
1.3 命令行窗口输入java / javac检查是否安装成功
官网下载地址:Java Archive Downloads
2.安装SDK环境(安装并设置环境变量/或是使用免安装版的adb工具包)
2.1 下载SDK
2.2 打开SDK Manager下载Android SDK Platform-tools
2.3 配置环境变量
2.4 命令行窗口输入adb检查是否安装成功
官网下载地址:AndroidDevTools - Android 开发工具
3.连接真机或者模拟器执行命令
3.1 模拟器选择与安装:(真机需要连接数据线)
常见的安卓模拟器: MuMu(网易MuMu)、BlueStacks(蓝叠) 、Nox(夜神)、 MEmu(逍遥安卓模拟器)、LDPlayer(雷电模拟器) 、Android Studio模拟器 、Genymotion模拟器、Phoenix OS(凤凰系统)
夜神模拟器安装地址:夜神安卓模拟器-安卓模拟器电脑版下载_安卓手游模拟器_手机模拟器_官网
3.2 连接真机
- 打开真机,进行usb调试:
- 进入设置--开发者选项--打开usb调试
- 如果没有开发者选项,在设置--软件版本,连续点击版本号多次,直到提示您已经处于开发者模式。
- 插上数据线,选择USB连接方式为传输文件
- adb devices查看连接状态
补充:WIFI连接(拔掉数据线后也能运行)的方法
- 打开真机,进行usb调试:
- 进入设置--开发者选项--打开usb调试
- 如果没有开发者选项,在设置--软件版本,连续点击版本号多次,直到提示您已经处于开发者模式。
- 手机电脑处于同一个局域网中 看网络号
- 插上数据线,选择USB连接方式为传输文件 adb devices查看连接状态
- adb tcpip 5555 让设备在 5555 端口监听 TCP/IP 连接
- 拔除数据线,输入adb connect ip:5555 手机IP可在WIFI设置中查看
- adb devices查看连接状态
常见问题:
WIFI连接,提示计算机积极拒绝10061
解决方法:手机需ROOT
1 通过USB线连接安卓板和开发电脑。
2 设置安卓系统如下,安卓系统中的开发者选项中的 <<USB调试>>项是开启的,<<USB配置>>是MTP选项。
3 在开发电脑WIN系统中,通过cmd打开命令行窗口界面,输入adb devices,如果能够看到, 列出所连接的设备,表示usb方式连接好Android系统。
4 win系统命令行界面中先后输入如下两条命令:
adb root //权限提权。
adb shell //进入到安卓系统的shell.
5 进入到安卓系统后,输入命令
setprop service.adb.tcp.port 5555 //设置adb服务端口为5555, 打开adb网络调试功能 附加说明: setprop service.adb.tcp.port -1 //表示打开adb的usb调试功能。
6 输入 exit 命令, 退出android shell。
7 输入命令:
adb tcpip 5555 //让设备在 5555 端口监听 TCP/IP 连接。
8 这时拔掉usb连接线。
9 使用 adb connect 192.168.1.181 进行adb 网络连接,可以正常连接。
总结:
无法连接的原因是安卓系统未打开adb网络调试功能, 通过usb方式连接到安卓系统并设置即可
解决办法:手机不需要Root
1.手机打开开发者模式,然后打开USB调试2.使用USB数据线连接手机和电脑
3.在PC端打开cmd命令窗口,输入adb devices ,可以看到已经连接的设备
4.输入adb tcpip 8888 (设置端口号为8888)
5.断开手机和电脑的连接
6.输入adb connect ip:8888,连接成功
常见问题:
WIFI成功连接后,拔掉数据线显示offline
1、拔掉数据线后,手机需要再次打开【开发者选项】中的USB调试。
2、打开【开发者选项】中的“仅充电”模式下允许ADB调试。
3.2 连接模拟器
前提:开启开发者选项
- 打开模拟器,进行usb调试:
- 进入设置--开发者选项--打开usb调试
- 如果没有开发者选项,在设置--关于平板电脑,连续点击版本号多次,直到提示您已经处于开发者模式。
电脑CMD命令行终端:adb devices 查看当前连接的设备,已连接的设备会显示出来
连接信息解释:
手机设备:显示设备的序列号,如8DJBRKIBKJ9D6AM
模拟器:显示IP地址和端口,如127.0.0.1:62001
状态:
device: 已识别设备,连接成功
unauthorized: 没有授权,需要手机进行授权手机弹出的授权框点击授权即可
unknown: 未识别设备 电脑上没有手机驱动,安装手机助手(豌豆荚,91助手)连接手机,自动安装驱动
offline: 设备离线,重新拔插USB
常见问题:
提示adb版本不一致
解决办法:将安装的adb.exe文件复制到模拟器文件夹中,另名为nox_adb.exe(模拟器本身自带一个adb工具,手动覆盖)
ADB工具使用
★日志操作命令
adb logcat:抓取日志
logcat可以查看手机4个缓冲区日志,包括radio、event、main、system
radio 存放通信日志,比如通话短信等
event表示手机按键输出等事件日志
main指的是手机应用软件的日志,属于应用层日志
system是系统组日志
默认输出main、system日志
日志是实时更新的
adb logcat:查看设备的日志信息
adb logcat > D:/logs/logcat.txt:导出日志
日志格式
1.写下日志的时间
2.日志级别 Verbose<Debug<Info<Warning<Error
V: Verbose指冗长啰嗦,通常表达开发调试过程中的一些详细信息
D:Debug调试。显示开发调试的信息,正式版本需关闭
I:Info表达一些提示性信息
W:Warning警告
E:Error出现错误,需要重点关注
3.标签tag:标明日志发起者,方便日志的过滤筛选
4.PID进程ID:比如6942
5.正文:本日志的整体内容
adb bugreport >d:\bugreport.log 输出日志保存在本地
bugreport日志包括logcat日志,提示也包含功耗、CPU等日志信息。支持Android7.0以上版本
- 非实时更新,主要抓取往前十分钟的信息
★input操作命令
adb shell input:
- text 输入文本
- keyevent 输入事件
- tap 点击
- swipe 滑动
前提:开发者选项中开启指针位置
adb shell input tap x y
常用命令
adb devices ---- 显示当前已经连接的设备
adb help ---- adb帮助
adb kill-server ---- 关闭adb连接服务
adb start-server ---- 开启adb连接服务 重启连接服务后需重新连接模拟器或手机
adb shell ---- 进入安卓内核linux系统终端
权限指令
adb root ---- 获取安卓管理员权限
adb remount ---- 获取系统分区的可写权限
获取包名的命令
adb shell pm list ppackages -s 列出系统应用
adb shell pm list ppackages -3 列出第三方的应用
当有多个设备时连接时
如果有多个设备/模拟器连接,则需要为命令指定目标设备,下表是指定目标设备的命令选项:
【adb -s 设备号 命令】 指定相应设备序列号的设备/模拟器为命令目标
【adb -d 命令】 指定当前唯一通过 USB 连接的 Android 设备为命令目标
【adb -e 命令】 指定当前唯一运行的模拟器为命令目标
安装/卸载应用
adb install [-l] [-r] [-t] [-s] [-d] [-g] <apk-file文件路径>
参数 | 含义 |
-l | 将应用安装到保护目录 /mnt/asec |
-r | 允许覆盖安装 |
-t | 允许安装 AndroidManifest.xml 里 application 指定 android:testOnly=“true” 的应用 |
-s | 将应用安装到 sdcard |
-d | 允许降级覆盖安装 |
-g | 授予所有运行时权限 |
adb uninstall -k 包名 卸载一个应用程序
-k 参数可选,表示卸载应用但保留数据和缓存目录
上传/下载文件
上传:adb push 本地文件路径 手机路径 adb push D:\网页下载\1.txt system/
下载:adb pull 手机文件路径 本地路径 adb pull system/1.txt D:\网页下载
ADB常用命令整理(全网最全)-腾讯云开发者社区-腾讯云