ADB工具的使用

ADB(Android Debug Bridge)是用于连接和管理Android设备或模拟器的命令行工具。本文介绍了ADB的C/S架构,包括client、server和device端的adbd,以及ADB的基本命令和常用操作,如查看设备状态、安装APK、管理应用、文件传输及日志导出等。

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 //以时间格式输出日志

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值