安卓系统是基于Linux系统开发,也就支持常见的Linux的命令,这些命令都保存在手机“/system/bin”的目录下,通过adb shell 便可以调用这些命令。
进入“/system/bin”该文件夹下便可以看到这些命令,如下图,常用的dumpsys、echo
 
 
 
对于以上的所有命令可以再后面跟上【-help】查看具体用法
如:adb shell screencap -help
 
1、adb shell screencap <手机路径> 
adb shell screencap /sdcard/test.png :截屏操作,appUI自动化常用命令,当case执行失败时,如果句柄丢失,也就是出现ANR或者崩溃时,框架无法截图,最好自己处理截图操作~   
ps:常用:adb shell screencap -p <手机路径>  保存为png格式图片
2、adb shell screenrecord <手机路径>
adb shell screenrecord  --time-limit 10 /sdcard/demo.mp4:说明:限制视频录制时间为10s,如果不限制,默认180s
PS:华为很多手机处于安全考虑删除了此命令,所以华为机型无法使用此命令~~~
 
以上两个命令经常配合adb pull命令将视频或图片保存至电脑
 
3、adb shell am <指令>   am:activity manager
我们知道activity是Android四大组件之一:
activity:单独的屏幕(窗口),Intent进行通信,AndroidManifest.xml配置文件中声明
此命令常用来启动指定activity,结束进程,发送广播,更改屏幕属性等
 
指令 说明 备注
start <Intent> 根据intent指向启动Activity Intent可以是显示的指向activity, 也可以是ACTION方式, 并且可以添加flag, data等参数信息.
startservice <Intent> 启动Service 可以添加flag, data等参数信息.
broadcast <Intent> 发送广播 可以添加flag, data等参数信息.
monitor 启动一个Crash和ANR的监听器 如有Crash或ANR会在控制台输出相关信息.
force-stop <Package> 强制停止该包相关的一切 传入package name.
kill <Package> 杀死该包相关的所有进程 传入package name.
kill-all 杀死所有后台进程  
display-size WxH 改变显示的分辨率 例如adb shell am display-size 1280x720, 手机可能不支持.
display-density <dpi> 改变显示的density 例如adb shell am display-density 320, 手机可能不支持.
restart 重启手机  
 
如:UI自动化的时,每条case独立,都是从首页开始进入其他地方,可执行下方命令setup时每次打开首页窗口,当然用UI去控制更好,这种又何尝不可
adb shell am start -n com.example.xxxx/com.example.xxxx.ui.activity.StartActivity
 
 
4、adb shell pm
pm即package manager
用来执行package相关的操作,例如安装卸载,查询系统的安装包
 
指令 说明 备注
list packages <Filter> 列出满足filter条件的所有包  
list permissions <Group> 列出该Group的所有权限  
list features 查看系统支持哪些feature 例如蓝牙, wifi, 摄像头等.
install <Path>/uninstall <Package> 安装卸载  
clear <Package> 清除应用数据  
get-install-location 获取安装位置  
5、按键事件
adb shell input keyevent  4:返回键
adb shell input keyevent  26:电源键
按键事件非常的多,大家可以产考这篇博客,写的非常全:https://www.cnblogs.com/chengchengla1990/p/4515108.html
6、输入字符串
adb shell input text 123(输入字符“123”)
7、点击屏幕像素位置
adb shell input tap 100 100 
8、滑动手机屏幕
adb shell input swipe 500 1000 500 500 1000
数字分别代办原始的X坐标,原始Y坐标,需要滑动目标X坐标,目标Y坐标,滑动时间,单位毫秒,滑动时间可不写。
9、设置自定义键盘,输入信息
adb shell ime set com.android.adbkeyboard/.AdbIME
adb shell am broadcast -a ADB_INPUT_TEXT --es msg \ "msg"
 
10 adb shell dumpsys
强大的dump工具,可以输出很多系统信息,例如window,activity,task/back  stack信息,wifi信息等。
 
专项测试的时候对这些命令非常有用,举个梨:
内存、adb shell dumpsys meminfo com.xxxxx.xxxx | findstr TOTAL
CPU、adb shell dumpsys cpuinfo | findstr com.xxxxx.xxxx
功耗、adb shell dumpsys battery
GPU、adb shell dumpsys gfxinfo com.xxxxx.xxxx
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Android:adb shell 命令详解的更多相关文章

  1. adb shell 命令详解,android

    http://www.miui.com/article-275-1.html http://noobjava.iteye.com/blog/1914348 adb shell 命令详解,android ...

  2. adb shell 命令详解,android, adb logcat

    http://www.miui.com/article-275-1.html http://noobjava.iteye.com/blog/1914348 adb shell 命令详解,android ...

  3. adb shell 命令详解(转)

    adb介绍 SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb,adb的全称为(Android Debug Bridge就是调试桥的作用.通过adb我们可以在Eclipse中方面 ...

  4. adb shell 命令详解

    adb介绍 SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb,adb的全称为(Android Debug Bridge就是调试桥的作用.通过adb我们可以在Eclipse中方面 ...

  5. 【转】Linux下Android ADB驱动安装详解

    原文网址:http://blog.csdn.net/zhenwenxian/article/details/5901350 Linux下Android ADB驱动安装详解 概述 最近由于内置的合作商比 ...

  6. Android的logcat命令详解

    前言          欢迎大家我分享和推荐好用的代码段~~ 声明          欢迎转载,但请保留文章原始出处:          CSDN:http://www.csdn.net        ...

  7. 【Devops】【docker】【CI/CD】关于jenkins构建成功后一步,执行的shell命令详解+jenkins容器运行宿主机shell命令的实现方法

    1.展示这段shell命令 +详解 #================================================================================= ...

  8. Linux主要shell命令详解(上)

    [摘自网络] kill -9 -1即实现用kill命令退出系统 Linux主要shell命令详解 [上篇] shell是用户和Linux操作系统之间的接口.Linux中有多种shell,其中缺省使用的 ...

  9. adb调试命令详解-2016.02.01

    adb(Android Debug Bridge),调试桥可以让设备的调试监测过程在远端进行,而不必在运行实际运行应用的设备上,方便调试的输出. 1 命令详解 a 查看帮助信息         adb ...

随机推荐

  1. win 与Linux 的hosts文件地址

    win(phpstudy):C:/Windows/System32/drivers/etc/hosts linux:  /etc/hosts

  2. Fuel9.0部署

    一.安装环境(准备工作): 1. 所需物理主机的要求如下 内存:8GB+,推荐16GB:(少于8GB的就免谈了) 磁盘:500GB+: 物理机OS:ubuntu-desktop-amd64 14.04 ...

  3. TensorRT 介绍

    引用:https://arleyzhang.github.io/articles/7f4b25ce/ 1 简介 TensorRT是一个高性能的深度学习推理(Inference)优化器,可以为深度学习应 ...

  4. 2019牛客暑期多校训练营(第一场) B Integration (数学)

    链接:https://ac.nowcoder.com/acm/contest/881/B 来源:牛客网 Integration 时间限制:C/C++ 2秒,其他语言4秒 空间限制:C/C++ 5242 ...

  5. 为什么“或命题"真假的判断是有真则真?

    我:为什么"或命题"真假的判断是有真则真? 长沙刘老师:难道不是吗? 我:是经验,约定,还是严格证明? L神:为什么不自己看书? 我:想严格推理证明 L神: L神:我学过的教材里是 ...

  6. Raspberry Pi3驱动Oled ssh1106屏

    Raspberry Pi3可以直接使用GPIO接口驱动OLED屏 一.接线 根据网上随便找的图可以看到树莓派3的GPIO接口引脚顺序 PS:26pin的GPIO为前26针 根据OLED屏的引脚说明,如 ...

  7. Linux的解压缩相关命令

    Linux的解压缩相关命令 知识点: 1.zip命令 2.tar命令 3.压缩和解压常用组合

  8. vue - 登录验证与权限控制

    描述具体问题 需求 业务系统通常需要登录才能访问受限资源,在用户未登录情况下访问受限资源需要重定向到登录页面: 多个业务系统之间要实现单点登录,即在一个系统或应用已登录的情况下,再访问另一个系统时不需 ...

  9. java文件分片上传,断点续传

    文件夹数据库处理逻辑 publicclass DbFolder { JSONObject root; public DbFolder() { this.root = new JSONObject(); ...

  10. 【Leetcode】国王挖金矿

    参考该文章 https://www.cnblogs.com/henuliulei/p/10041737.html #include <iostream> #include <cstr ...