ADB命令的使用

一、ADB简介

adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试应用

 

二、ADB的使用

1.列出所有连接的设备:adb devices

 

2.列出安装的所有apk包:adb shell pm list packages

3.列出系统应用apk包:adb shell pm list packages -s

4.列出第三方应用apk包:adb shell pm list packages -3

 

5.安装应用程序:adb install -r [apk文件]

java adb命令工具 adb命令使用_包名

-l:将应用安装到保护目录 /mnt/asec 不太懂

-r:允许覆盖安装

-t:允许安装啥啥啥 等下再写

-d:允许降级覆盖安装

-s:将应用安装到 sdcard

-g:授权所有运行权限

将应用程序安装到某一个设备中

adb -s cf7878sd(设备名称) install test.apk

 

6.查看安装路径:adb shell pm path [apk包名]

 

7.卸载应用程序:adb shell uninstall [apk包名]

java adb命令工具 adb命令使用_包名_02

 

 

-k #不删除程序运行所产生的数据和缓存目录(如软件的数据库文件)

例:adb uninstall -k com.tencent.mm

 

7.清除应用缓存信息:adb shell pm clear [package 包名]

例:adb shell pm clear cn.xlink.xxxx

拓展学习:可用于测试app,将app缓存清除后,对于app的使用是否有影响,针对清除数据校验app,还可以有如下的方法:通过第三方软件对app进行清理(如360卫士)、去到手机的设置页面,程序管理,主动清除数据(感觉这个测试点要是被开发知道,可能会被打)

 

8.查看前台activity:adb shell dumosys activities | findstr mFocusedActivity

adb shell dumpsys activity | grep -i run

 

9.查看正在运行的services:adb shell dumpsys acivity services [包名]

 

10.启动特定的APP应用:adb shell am start -n [apk包名]/[启动activity又称mainactivity]

例:adb shell am start -n cn.xlink.zensun/cn.xlink.park.modules.splash.view.SplashActivity

 

11.强制停止应用:adb shell am force-stop [包名]

例:adb shell am force-stop cn.xlink.zensun

 

12.查看应用详细信息:adb shell dumpsys package [包名]

例:adb shell dumpsys package cn.xlink.zensun

 

针对dumpsys的使用:参考链接:https://www.jianshu.com/p/e710fe2410ca

adb shell dumpsys XXX

 

java adb命令工具 adb命令使用_包名_03

 

 

java adb命令工具 adb命令使用_应用程序_04

13.查看屏幕分辨率:adb shell wm size

修改屏幕分辨率:adb shell wm size 720x1024

可能会出现无法修改的问题,如下图所示:

java adb命令工具 adb命令使用_包名_05

 

 解决方法:

去到手机设置页面,开发者选项,打开安全

 

无线连接

1.手机与电脑连接同一个网络

2.查看手机是否连接成功:adb devices

3.让设备在5555端口监听TCP/IP连接:adb tcpip 5555

4.断开USB连接

5.查看设备的IP地址:adb shell ifconfig | findstr Mask

6.通过ip连接设备:adb connect <device-ip-address>

7.校验是否连接成功:adb devices,出现<device-ip-address>:5555 device,表示连接成功

java adb命令工具 adb命令使用_缓存_06

 

 

三、疑难杂症

1.adb devices无法找到设备(部分手机可以,部分不行,可排除驱动未安装引发的问题),解决方案可参考:https://jingyan.baidu.com/article/ce09321b5b76642bff858f31.html

大体上为:找到手机设备的硬件id,将硬件id加入到adb_usb.ini 及可

 

2.使用grep 命令时提示:grep' 不是内部或外部命令,也不是可运行的程序或批处理文件

解决方案有两种:

一、将adb shell 后面的用双引号括起来

java adb命令工具 adb命令使用_java adb命令工具_07

 

二、将grep替换成findstr