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. SpringMVC学习记录二——非注解和注解的处理器映射器和适配器

    3      非注解的处理器映射器和适配器 3.1      非注解的处理器映射器 处理器映射器: org.springframework.web.servlet.handler.BeanNameUr ...

  2. sqlite简单笔记

    五种约束需要注意的地方 1.自增使用:autoincrement 2.约束必须进行后面处理:unique(字段[多个可以以逗号分开]) 3.外键必须放后面:foreign key(字段引用) refe ...

  3. Android学习笔记_30_常用控件使用

    一.状态栏通知(Notification): 如果需要查看消息,可以拖动状态栏到屏幕下方即可查看消息.发送消息的代码如下: public void sendNotice(View v){ int ic ...

  4. Python—面向对象 封装03

    接着上面的一篇继续往下: 如何隐藏 在python中用双下划线开头的方式将属性隐藏起来(设置成私有的) class A: __x = 1 # _A__x = 1 def __init__(self, ...

  5. Vue nodejs商城-订单模块

    一.订单列表渲染 新建OrderConfirm.vue订单确认页面,添加路由 src/router/index.js添加路由 import OrderConfirm from '@/views/Ord ...

  6. rabbitmq消息中间件读后感

    1:RabbitMQ是一个开源的消息代理和队列服务器,可以通过基本协议在完全不同的应用之间共享数据,使用Erlang语言开发的,是基于AMQP(高级消息队列协议)协议,Erlang主要用于交换机的开发 ...

  7. JavaScript-语法专题

    一.数据类型的转换 概述 JavaScript是一种动态语言,变量没有类型限制,可以随时赋予任意值 强制转换:主要是值Number(),String(),Boolean三个函数 Number函数,可以 ...

  8. dcm4che 的依赖无法下载

    遇到问题时我在Gradle这样引入 maven { url "http://www.dcm4che.org/maven2"} 这样使用可以解决问题 maven { url &quo ...

  9. Floyd 算法详解

    Floyd-Warshall Floyd算法,是一种著名的多源最短路算法. 核心思想: 用邻接矩阵存储图,核心代码为三重循环,第一层枚举中间点k,二三层分别枚举起始点i与目标点j.然后判断经过中间点k ...

  10. Zookeeper 面试总结

    1:Zookeeper是什么? 答:ZooKeeper是一个开源的分布式协调服务,是集群的管理者,监视集群节点反馈信息进行下一步合理操作. Zookeeper提供的服务:管理用户程序提交的数据:为用户 ...