ADB(Android Debug Bridge) 小白笔记

学习资料


adb简要介绍

adb 是一个 C/S 架构的命令行工具,主要由 3 部分组成:

  1. 运行在 PC 端的 Client : 可以通过它对 Android 应用进行安装、卸载及调试
  2. 运行在 PC 端的 Service : 其管理客户端到 Android 设备上 adb 后台进程的连接
  3. 运行在 Android 设备上的 adb 后台进程
  1. ADT/SDK Tools目录下的DDMS、Monitor等工具,都是同样地用到了 adb 的功能来与Android设备进行交互

adb命令学习

adb命令主要分为三种

  1. adb 命令
  2. adb shell 命令
  3. Linux 命令

- adb命令

一般格式:

  1. adb [-e |-d |-s <设备序列号>]<子命令>

常用adb命令:

  1. adb devices //获取设备列表及设备状态
  2. adb get-state [-s]//获取设备的状态,后面选填设备序列号,可以查询具体设备的状态
  3. adb kill-server //结束adb服务
  4. adb start-server //启动adb服务
  5. adb logcat //**打印 Android 的系统日志(log的筛选和记录后面会再单独拿出来学习)**
  6. adb bugreport //**打印dumpsys、dumpstate、logcat的输出,也是用于分析错误**
  7. adb install [apk文件]//安装应用;覆盖安装是使用 -r 选项
  8. adb uninstall [app包名]//卸载应用;使用 -k 选项,卸载时保存数据和缓存目录
  9. adb pull [设备文件位置][本地目录]//将 Android 设备上的文件或者文件夹复制到本地
  10. adb push [本地文件位置][设备目录]//推送本地文件至 Android 设备
  11. adb reboot //重启 Android 设备

- adb shell 命令

adb shell 命令是调用的是 Android 系统中的命令,这些 Android 特有的命令都放在了Android 设备的 system/bin 目录下。

常用adb shell命令:

pm

  1. adb shell pm list package//列出所有的应用的包
  2. adb shell pm list package-s //列出系统应用
  3. adb shell pm list package-3//列出第三方应用
  4. adb shell pm list package-f //列出应用包名及对应的apk名及存放位置
  5. adb shell pm list package-i [关键字]//过滤关键字,可以很方便地查找自己想要的应用
  6. adb shell pm list package-f -3-i whatsapp //参数可以组合使用
  7. >>package:/data/app/com.whatsapp-1/base.apk=com.whatsapp installer=null
  8. adb shell pm path [包名]//列出对应包名的 .apk 位置
  9. adb shell pm list instrumentation //列出含有单元测试 case 的应用,后面可跟参数 -f
  10. adb shell pm dump[包名]//**列出指定应用的 dump 信息**
  11. adb shell pm install [包名]//安装应用
  12. adb shell pm uninstall [包名]//卸载应用;使用 -k 选项,卸载时保存数据和缓存目录
  13. adb shell pm clear [包名]//清除应用数据

am

  1. adb shell am start [-D | W | P | R | S][包名]//启动应用
  2. >>参数:
  3. -D: enable debugging 打开调试
  4. -W: wait for launch to complete 等待应用完成启动
  5. -P <FILE>: like above, but profiling stops when app goes idle //(不懂)
  6. -R: repeat the activity launch <COUNT> times.Prior to each repeat,重复开启应用
  7. -S: force stop the target app before starting the activity 先停止目标应用,再启动
  8. adb shell am instrument //**启动一个 instrumentation , 单元测试或者 Robotium 会用到**
  9. adb shell am monitor //**监控 crash 与 ANR**
  10. adb shell am force-stop [包名]//结束应用
  11. adb shell am startservice //启动一个服务
  12. adb shell am broadcast //发送一个广播

input

input命令可以向 Android 设备发送按键事件

  1. adb shell input text [文本]//发送文本内容,不能发送中文
  2. adb shell input keyevent [KeyEvent]//发送按键事件
  3. adb shell input tap [x轴][y轴]//对屏幕发送一个触摸事件
  4. adb shell input swipe [x0][y0][x1][y1][持续时间]//滑动事件
  5. >> adb shell input swipe 5005005015012000//在小的距离内,较长的持续时间内进行滑动,最后表现出来的结果就是长按动作

其他常用adb shell命令

  1. adb shell screencap -p [自定目标目录下的文件名]//截图命令
  2. adb shell screenrecord [自定目标目录下的文件名]//录制命令
  3. adb shell uiautomator dump//执行 UI automation tests , 获取当前界面的控件信息
  4. adb shell ime list -s //列出设备上的输入法
  5. adb shell ime set[输入法包名]//选择输入法
  6. adb shell wm size //获取设备分辨率

monkey,dumpsys,log(后面另外学习,整理笔记)

- Linux 命令

(后面另外学习,整理笔记)

【Android】SDK工具学习 - adb的更多相关文章

  1. Android SDK工具(谷歌提供的16个工具)简介

    Android SDK包含了许多可以帮助你开发Android平台应用的工具.这些工具分为两类:一是SDK工具:而是平台工具.SDK工具独立于平台,任何开发Android应用的平台都需要配置.平台工具是 ...

  2. Xamarin.Forms教程Android SDK工具下载安装

    Xamarin.Form的Android SDK工具下载安装 本节将讲解如何下载Xamarin.Form的Android SDK工具,并使用其中的工具管理Android SDK,如何创建模拟器等内容. ...

  3. 第一章 工欲善其事 其利润—Android SDK工具(2)

    1.2设备管理工具-调试桥(ADB) 1.2.1ADB简单介绍 ADB全称是Android Debug Bridge,是Android SDK里自带的一个工具,用这个工具能够直接操作管理Android ...

  4. 第一章 工欲善其事 必先利其器—Android SDK工具(3)

    1.3没有真机一样开发--Android模拟器 有些时候,我们手头上可能并没有符合要求的Android设备.那么这时候我们是不是对调试或者开发就一筹莫展了呢?当然不是.由于我们有Android模拟器. ...

  5. android sdk 深入理解adb

    adb 服务器-客户端程序包括3部分 1.客户端(client) 在开发机器上运行,可通过adb命令行呼叫客户端,ADT插件和DDMS同样需要adb客户端   2.服务端(server) 在开发机器上 ...

  6. 【Android】SDK工具学习 - bmgr

    bmgr官方文档 我自己的理解就是bmgr也是一款命令行工具,主要操作Android设备中的Backup Manager(支持API8.0以上的ADT) 主要就是备份(Backup)和还原(Resto ...

  7. 【Android】SDK工具学习 - Traceview 和 dmtracedump

    dmtracedump官方文档 Traceview 根据程序的log,形成图形 dmtracedump [-ho] [-s sortable] [-d trace-base-name] [-g out ...

  8. Android 开发工具介绍-SDK工具和平台工具

    原文链接:http://android.eoe.cn/topic/android_sdk Android的SDK提供各种工具可以帮你为Android平台开发移动应用程序.这些工具被分类成两组:SDK工 ...

  9. 配置android sdk 环境

    1:下载adnroid sdk安装包 官方下载地址无法打开,没有vpn,使用下面这个地址下载,地址:http://www.android-studio.org/

随机推荐

  1. poj3261Milk Patterns 后缀数组

    题目地址:http://poj.org/problem?id=3261 题目: Description Farmer John has noticed that the quality of milk ...

  2. POJ 2516 Minimum Cost (KM最优匹配)

    题意:有N家家店,每家店都对K种货物有需求:同时有M家仓库,对K钟货物有供应.对于每种货物,每个仓库送至每家店都有自己的单位费用.求满足所有店所有货物的最小费用 分析:对于每一种货物,如果总需求大于总 ...

  3. Tomcat 源码分析(转)

    本文转自:http://blog.csdn.net/haitao111313/article/category/1179996 Tomcat源码分析(一)--服务启动 1. Tomcat主要有两个组件 ...

  4. Leaflet API 翻译(一)

    摘自:http://jsrookie.iteye.com/blog/2318972 L.Map API各种类中的核心部分,用来在页面中创建地图并操纵地图. Constructor(构造器) 通过div ...

  5. flex NaN

    如果该值为NaN(非数字),则返回true:否则返回false.public function isNaN(num:Number):Boolean 举例:NaN值不是int或uint数据类型的成员.f ...

  6. JSP与Servlet之前台页面自动回复之实现

    [JSP与Servlet之前台页面自动回复之实现] 该内容 来自于imooc的一个视屏教程.http://www.imooc.com/video/4562 就是当点击 发送 的时候把这个对话框内容添加 ...

  7. GIT如何使用:大杀器!所有常用指令整理

    1 pwd 显示当前目录2 mkdir 创建目录 cd 进入文件3 git init 变成Git可以管理的仓库(千万不要修改目录下的.git隐藏文件夹)4 ls -ah 可以把.git文件显示出来5 ...

  8. java基础(2)--进制

    进制 进制基础, 目的:理解计算机只能处理2进制的数据和指令 1)10进制计数规律 数字: 0 1 2 3 4 5 6 7 8 9 基数:10 权:  1000 100 10 1 权是基数的n次幂 2 ...

  9. spark学习12(spark架构原理)

    spark采用的是主从式的架构,主节点叫master,从节点是worker Driver 我们编写的spark就在Driver上,由driver进程执行. Driver是spark集群的节点之一,或你 ...

  10. HttpServletResponse 的 sendError( )方法以及常用的HttpServletResponse常量级错误代码

    HttpServletResponse 的 sendError( )方法以及常用的HttpServletResponse常量级错误代码   转载:http://hi.baidu.com/yanfei_ ...