ADB工具就是Android Debug Bridge(安卓调试桥)tools。它是一个命令行窗口,用手机通过电脑端与模拟器或者真实设备交互。在某些特殊的情况下进入不了系统,adb就派上用场。
ADB是一个C/S架构的应用程序,由三部分组成:
● 运行在PC端的adb client:
命令行程序“adb”用于从shell或脚本中运行adb命令。首先,“adb”程序自动启动一个ADB服务器。接下来,当设备的adbd和PC端的adb server建立连接后,adc client就可以向ADB server发送服务请求
● 运行在PC端的adb server
ADB server是运行在主机上的最后一个后台进行。它的作用在于检测usb端口感知设备的连接和拔除,以及模拟器实例的启动或停止,ADB server还需要经adb client的请求通过usb或者tcp的方式发送到对应的adbd上
● 运行在设备端的常驻进程adb demon(abdb):
程序“adbd'作为一个后台进程在Android设备或模拟器系统中运行。它的作用是连接ADB服务器,并且为运行在主机上的客户端提供一些服务。
一、基本命令
查看adb的版本信息:adb version
启动adb:adb start-server
停止adb:adb kill-server
以root权限运行adb:adb root
指定adb server的网络端口:adb -P <port> start-server(adb的默认端口为5037)
设备连接管理:
I、usb连接:将设备与电脑通过usb线连接
II、adb命令连接:adb connect IP
查看已经连接的设备/模拟器列表:adb devices
如果有多个设备/模拟器连接,则需要为命令指定目标设备
adb -d:指定当前唯一通过USB连接的Android设备为命令指标
adb -e:指定当前唯一运行的模拟器为命令指标
adb -s:指定相应serialNumber好的设备/模拟器为命令指标
二.常用命令
以手机为例,用USB线将手机与电脑连接,连接后手机打开开发者模式,接下来就可以在ADB工具上对手机进行操作
1.查看手机是否与ADB工具连接成功
命令:adb devices
输出格式:
[serialNumber][state],serialNumber为连接设备的编号
运行结果:
List of devices attached
c16e0aa device---出现device说明连接成功
state有以下几种:
offline——表示设备未连接成功或无响应
device ——设备已连接
no devies——没有设备/模拟器连接
unauthorized——未经允许的(手机没有允许打开开发者模式会出现)
常见异常输出:
List of devices attached——没有设备/模拟器连接成功
List of devices attached——设备/模拟器未连接到adb或无响应
2.手机重启
命令:adb reboot
运行结果:
adb reboot
空行 手机重启了
3.查看手机中的应用
命令:adb shell pm list packages [-3]
运行结果:
adb shell pm list packages
package:com.coloros.backuprestore
package:com.oppo.logkitsdservice
package:com.oppo.ctautoregist
package:com.coloros.onekeylockscreen
package:com.coloros.phonenoareainquire
在这个的基础上还可以加一些参数进行过滤查看不同的列表
无——所有应用
-f——显示应用关联的apk文件
-d——只显示disabled的应用
-e——只显示enabled的应用
-s——只显示系统应用
-3——只显示第三方应用
-i——显示应用的installer
-u——包含已卸载的应用
也可以使用grep来顾过滤:
adb shell pm list packages | grep <要过滤的字符串>
例如:
命令:adb shell pm list packages -3
运行结果:
package:com.coloros.onekeylockscreen
package:com.qiyi.video
4.给手机安装apk
命令:adb install <下载好的安装包>
参数:
-l——将应用安装到保护目录/mnt/asec
-r——允许覆盖安装
-s——将应用安装到sdcard
-d——允许降级覆盖安装
-g——属于多有运行时权限
5.卸载应用
命令:adb uninstall <包名>
运行结果:
adb uninstall net.csdn.csdnplus//卸载csdn
Success
参数:
-k——表示卸载应用但保留数据和缓存目录
6.清楚数据应用与缓存
命令:adb shell pm clear <packagename>
运行结果:
adb shell pm clear com.baidu.netdisk//清除百度的缓存数据
Success
7.停止应用
命令:adb shell am force-stop <packagename>
运行结果:
adb shell am force-stop com.tencent.qqmusic //停止运行QQ音乐
手机上QQ退出应用,后台也退出了
8.复制手机的文件到电脑上
命令:adb pull <设备里的文件路径> [电脑上的目录]
9.复制电脑里的文件到设备
命令:adb push <电脑上的文件路径> <设备里的目录>
10.导出日志
命令:adb logcat [选项] [过滤项] [输出路径]
运行结果:adb logcat -v time >d:\log1.txt //以时间格式输出日志
ADB(Android Debug Bridge)是用于连接和管理Android设备或模拟器的命令行工具。本文介绍了ADB的C/S架构,包括client、server和device端的adbd,以及ADB的基本命令和常用操作,如查看设备状态、安装APK、管理应用、文件传输及日志导出等。

1万+

被折叠的 条评论
为什么被折叠?



