adb简介-安装-常用命令

  • Post author:
  • Post category:其他



一、ADB概述

ADB的全称是Android Debug Bridge 安卓调试桥。

用于通过电脑端来操作模拟器或真实设备的命令行工具。它存在于电脑端platform-tools目录下(adb.exe),adb是一种C/S架构的客户端-服务器程序。


二、下载及安装

1.下载adb工具


Downloads – ADB Shell

下载解压只有有如下文件:

2.双击adb.exe文件,并运行。

3.配置环境变量

变量名随便填—变量值(即:adb的路径安装路径)

到此adb安装完成。现在进行测试:

打开运行—输入

cmd

—输入adb version,出现下图即安装成功

三、adb命令:

adb链接设备,设备要开启开发者模式;(最好一台电脑连接一台调试设备,便于测试)

a

1、查看adb版本:adb version

2、启动 adb server 命令:adb start-server

3、停止 adb server 命令:adb kill-server

4、重启设备:adb reboot

5、屏幕截图:adb shell screencap  /sdcard/Download/screen.png

6、屏幕录制:adb shell screenrecord /sdcard/Download/test.mp4

7、解锁:adb disable-verity

8、向手机端传递文件:adb push 目标文件路径 手机端SDCard存放路径

9、从手机端下载文件:adb pull 目标文件路径 电脑端存放路径

10、启动一个APP、启动Activity、启动广播和服务:adb shell am start 包名

11、清除APP数据:adb shell pm clear 包名【该命令清除掉APP的缓存,还能把APP的数据给清空】

12、查询已连接设备/模拟器:adb devices

首次使用adb devices,出现* daemon not running. starting it   * daemon started successfully * 表示正在启动adb服务;

List of devices attached下方没出现任何信息,表示手机没连上电脑,或者电脑上没安装手机的驱动。插拔usb数据线,电脑屏幕出现无法识别的usb设备,表示手机驱动没安装好;

出现adb server version (32) doesn’t match this client (36),表示adb端口冲突,被其它应用占用了,比如(91助手,手机管家之类的)【解决:卸载91助手,手机管家之类的】;




设备状态说明:


设备序列号+device:表示成功连接adb服务器。

设备序列号+unauthorized:表示手机未授权给电脑连接【解决:打开手机允许USB调试,USB连接配置选择MTP】;

设备序列号+offline:表示真机或者模拟器没有连接到adb 服务器 或者是没有响应。【解决:开启usb调试模式、关闭第三方手机助手软件、重启adb服务(命令:adb kill-server 、adb start-server)】

13、多个设备使用指令:adb -s 设备序列号 指令。

举例:给某个设备安装apk文件

adb -s 设备序列号 install xxx.apk

14、安装APK文件,绝对路径:

adb install apk文件绝对路径:适用于第一次安装,直接安装



命令执行结果分析:

结果1:Failure[INSTALL_FAILED_ABORTED:User rejected permissious.]

表示用户拒绝安装(未关闭监控安装)

解决:打开手机-设置-开发者模式选项-关闭“监控ADB安装应用”

结果2:Failure[INSTALL_FAILED_ALREADY_EXISTS:Attempt to re-install 包名

without first uninstalling.]

表示手机中已安装该app

解决:adb install -r  apk文件绝对路径 强制安装,覆盖存在app,不删除应用数据。

结果3:Failure[INSTALL_FAILED_VERSION_POWNGRADE.]

表示当前安装的app版本低于已经安装的应用版本。

解决:卸载已安装应用,再安装低版本app



命令参数:

-t :允许测试包

-l :锁定该应用程序

-d :允许降级覆盖安装,即安装的比手机上带的版本低。

-g :为应用程序授予所有运行时的权限

-r :替换已存在的应用程序,强制安装

-s :把应用程序安装在SD卡上

15、查看手机端安装的App包名

adb shell pm list packages

adb shell pm list packages –f:在后面加上 -f ,能显示该APP的路径。

16、查找手机端某一个App包名

adb shell am monitor:输入命令后,手动在手机端启动需要获取包名的app,电脑端实时响应显示该包名。

adb shell dumpsys window w | findstr \/ |findstr name=:首先在手机打开需要获取报名的app,然后电脑端输入该命令。即显示正在运行的应用的包名。

17、卸载App

adb uninstall com.xxx:直接删除应用和所有数据

adb uninstall -k com.xxx:删除应用,但保留应用数据和缓存数据。【输入该命令无法执行时可用adb shell cmd package uninstall -k】


四、系统进程命令

1、查看进程信息

adb shell ps:可在该命令后加包名,来查看某个应用程序的进程信息。

2、查看CPU使用情况

adb shell top:查看系统CPU使用情况。(ctrl+c结束)


五、事件模拟命令


Logcat

1、显示日志信息:adb logcat

2、将日志写入文件中:adb logcat -> test.log

3、手机bug抓取日志:输入命令adb logcat -v time > log (文件名)       【进行操作bug的复现操作即可, logcat.log在cmd执行命令的文件下】

4、清除main缓存区域日志:adb logcat –c

5、清除所有日志:adb logcat -c -b main -b events -b radio -b system

6、抓取日志输出到文件:adb logcat | findstr LogUtils > D:\LogInfo.log



版权声明:本文为alireally原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。