adb 命令是adb程序自带的一些命令;adb shell则是调用Android系统的命令,Android系统特有的命令都放在Android设备的/system/bin目录中

MonkeyRunner能做到的事情,通过adb命令均可以做到

常用ADB命令
adb start-server

//关闭adb服务
adb kill-server //查看连接设备
adb devices //获取设备状态
//3中状态:device(设备连接正常),offline(连接异常,设备无响应),unknown(无设备)
adb get-state 重启机器 //正常重启
adb reboot // 重启到 bootloader (刷机模式)
adb reboot bootloader // 重启到 recovery (恢复模式)
adb reboot recovery //安装应用程序(前提是切换至安装包所在路径)
adb install XXX.apk //卸载应用程序
adb uninstall XXX
常见ADB shell命令
// 查看网络状态
adb shell netstat //查看service
adb shell service list

**adb shell下常用的命令有pm,am,input

pm(package Manager),即获取安装在Android设备上的应用信息

可通过在DOC窗口运行adb shell pm可以获取到帮助信息**



//获取设备上安装的所有应用
adb shell pm list package
//获取设备上系统应用
adb shell pm list package -s
//获取设备上安装的第三方应用
adb shell pm list package -3
//获取所有应用及存放位置
adb shell pm list package -f
//获取所有应用及安装来源
adb shell pm list package -i //获取指定包名对应apk路径
adb shell pm path 包名 //获取指定应用的dump信息
adb shell pm dump 包名 //清空指定应用的数据及缓存
adb shell pm clear 包名 //获取设备上的权限
adb shell pm list permissions //列出设备上所有feature
adb shell pm list features
am(activity manager)可用来模拟各种系统的行为

am start启动Acticity

//-n 启动指定的Activity
//-S先停止目标应用再启动
//-W 等待应用完成启动
adb shell am start -n Activity //am monitor:监控crash和ANR
adb shell am monitor

am force-stop:结束应用

am startservice:启动服务

am broadcast:发送广播

am instrument , 启动instrumentation,单元测试可以用到

input:向Android设备发送按键事件
//模拟输入,%s代表空格
adb shell input test "文字" //模拟按键,82代表菜单键
// 更多KEYCODE可以参考 http://developer.android.com/intl/zh-cn/reference/android/view/KeyEvent.html
adb shell input keyevent 82 //模拟点击
adb shell input tap 100 200 //模拟滑动,从位置A-B
adb shell input swipe 0 1000 800 600 //模拟长按,单位为毫秒
adb shell input swipe 0 100 0 100 100
screencap:截图命令
//截屏
adb shell screencap /sdcard/1.png
screenrecord:录屏
//录屏
//--size 指定录制视频的分辨率
//--bit-rate 设置视频采样比特率,缺省值为4Mbps
//--time-limit 设置录制时间,单位S,默认180S
//--verbose 录屏时电脑端屏显log,录制结束后还发出了广播android.intent.action adb shell screenrecord --verbose --size 1920x1080 --bit-rate 5000000 --time-limit 20 /sdcard/test1.mp4
dumpsys:打印当前系统所有service信息

如:电量相关

//查看电量管理信息
adb shell dumpsys power
//查看电池用量情况
adb shell dumpsys battery
//查看电池信息
adb shell dumpsys batterystats
//查看指定应用的内存使用情况
adb shell dumpsys meminfo 包名
monkey:运行monkey命令
//执行monkey命令
adb shell monkey -p 包名
uiautomator:获取当前界面控件信息
//dump获取控件信息
adb shell uiautomator dump
//runtest
ime:获取输入法
adb shell ime list -s
adb shell ime set 输入法
wm:获取屏幕分辨率
adb shell wm size
其他常用命令

查看进程

adb shell ps

查看文件

//查看根目录下所有文件
adb shell ls //查看sd卡根目录下所有文件
adb shell ls /scard/ //切换到子目录下
adb shell cd /路径 //显示当前所在目录
adb shell pwd //删除文件
//-f强制删除文件不需要确认
//-r递归删除文件夹内所有文件
//-i删除文件前需要确认
adb shell rm 路径 //创建目录
//-p按照递归创建目录
adb shell mkdir 路径
//拷贝文件从A到B
adb shell cp /A/文件 /B //移动文件
adb shell mv 路径/文件 路径文件 //复制文件到本地
adb pull /sdcard/1.png d:\ //推送本地文件至连接设备
adb push d:\1.png /sdcard/

查看CPU及内存

//-n默认每隔1s刷新一次CPU及内存
//-m占用内存前N //查看占用内存前3的应用,刷新1次
adb shell top -m 3 -n 1 //查看系统当前CPU使用情况
adb shell cat /proc/cpuinfo
adb shell cat /proc/stat //查看系统当前内存使用情况
adb shell cat /proc/meinfo

其他

//打印日志
adb logcat

参考文档:

adb常用指令

android adb常用命令收集

ADB常用指令的更多相关文章

  1. Android adb常用指令

    Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态. 可以通过下列几种方法加入adb: 在设备上运行shell命令 通过端口转发来管理模拟器或设备 从模拟器或 ...

  2. 【Android】ADB常用指令与logcat日志(转)

    ADB命令简介 ADB是一个功能强大的命令行工具.通过它可以直接和模拟器或真机进行交互.它是一个具有客户端和服务器端的程序. 它主要由三个部分组成: 客户端,它运行在你的开发机上,你可以通过执行adb ...

  3. android adb 常用指令

    转自:http://www.cnblogs.com/playing/archive/2010/09/19/1830799.html Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你 ...

  4. 【Android】ADB常用指令与logcat日志

    ADB命令简介 ADB是一个功能强大的命令行工具.通过它可以直接和模拟器或真机进行交互.它是一个具有客户端和服务器端的程序. 它主要由三个部分组成: 客户端,它运行在你的开发机上,你可以通过执行adb ...

  5. android adb常用指令

    介绍一个更详细的介绍ADB的: https://github.com/mzlogin/awesome-adb/blob/master/README.md ----------------------- ...

  6. 【转】android adb常用指令

    Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态. 可以通过下列几种方法加入adb: 在设备上运行shell命令 通过端口转发来管理模拟器或设备 从模拟器或 ...

  7. ADB工具常用指令和使用情形分析

    一.ADB常用命令:(不需要进到设备,也就是:不需要执行adb shell) adb devices 列出所有的已连接的设备 adb kill-server 关闭adb adb start-serve ...

  8. Android开发系列之adb常用命令

    对于Android开发者来说,如果没有adb的帮助,那肯定就跟少了一只手那样别扭.其实笔者在刚刚学习Android开发的时候,也没有意识到adb的重要性.想想只要用IDE画出界面,然后实现后台的逻辑代 ...

  9. 移动端自动化测试之adb常用命令

    今天我们来聊聊自动化测试过程中常用的adb命令. 简介 首先介绍下什么是adb,adb全称叫“android debug bridge”,翻译过来就叫调试桥,通过命令行指令,可让你与移动端设备进行相互 ...

随机推荐

  1. Class<T>和Class<?>区别

    Class<T>在实例化的时候,T要替换成具体类Class<?>它是个通配泛型,?可以代表任何类型

  2. 运lucky

    运 [问题背景] zhx 和妹子们玩数数游戏. [问题描述] 仅包含 4 或7 的数被称为幸运数. 一个序列的子序列被定义为从序列中删去若干个数, 剩下的数组成的新序列. 两个子序列被定义为不同的当且 ...

  3. 【luogu P3366 最小生成树】 模板

    这里是kruskal做法 当然prim也可以,至于prim和kruskal的比较: Prim在稠密图中比Kruskal优,Kruskal在稀疏图中比Prim优. #include<bits/st ...

  4. java类的初始化程序块以及被实例化时候的执行顺序

    初始化块:在类实例化过程中初始化执行顺序是先执行静态初始化块,然后执行普通初始化块,最后执行构造函数,而且静态初始化只在第一次被实例化时执行且只执行一次.public class HelloWorld ...

  5. Python学习之路——文件操作

    文件操作分三步:打开文件,读写文件,关闭文件.读取操作时没有给read函数加括号,会出现下面这样的车祸 >>> data = open('/home/supersun/Documen ...

  6. Spring知识点总结(二)之Spring IOC

    1.创建bean类,并在spring中进行配置交由spring来管理1. IOC(DI) - 控制反转(依赖注入)    所谓的IOC称之为控制反转,简单来说就是将对象的创建的权利及对象的生命周期的管 ...

  7. JavaFXML实现新窗口打开

    实现原理顺着往下看就明白了,流程看红色字体.具体还有什么问题可以留言. 主页面配置文件,一共三个按钮.这里说明第一个按钮触发打开新窗口 <?xml version="1.0" ...

  8. 2018 Wannafly summer camp Day8--区间权值

    区间权值 小Bo有\(n\)个正整数\(a_1\)--\(a_n\),以及一个权值序列\(w_1\)--\(w_n\),现在她定义\(f(l,r)=(\sum_{i=l}^r a_i^2) *w_{r ...

  9. ATX 浅谈自动化测试工具 python-uiautomator2

    1.简介 python-uiautomator2是一个自动化测试开源工具,仅支持Android平台的原生应用测试. 2.支持平台及语言 python-uiautomator2封装了谷歌自带的uiaut ...

  10. php导出excel长数字串显示为科学计数方法与最终解决方法

    1.设置单元格为文本 $objPHPExcel = new PHPExcel(); $objPHPExcel->setActiveSheetIndex(0); $objPHPExcel-> ...