ADB工具的使用

    技术2022-07-11  104

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

     

    Processed: 0.011, SQL: 9