1、ADB命令简介

ADB全名Andorid Debug Bridge,是一个Debug调试工具,用这个工具可以直接操作管理Android模拟器或者真实的android设备。

  • 开发安卓应用的程序员必须要掌握。
  • 测试工程师在做安卓应用测试时,会使用到。

ADB是Android SDK里的一个是一个C/S架构的命令程序(platform-tools文件夹中),其中客户端是我们操作的电脑,服务器端是Android设备。ADB就是起到调试桥的作用,通过这个桥我们可以管理设备或手机模拟器的状态,还可以进行安卓手机的很多操作,如安装软件、系统升级、运行shell命令等等。

换句话说,ADB就是连接Android手机与PC端的桥梁,可以让用户在电脑上通过终端ADB命令操作安卓手机/模拟器。

2、ADB命令运行原理

ADB是一个标准的C/S结构的工具,是来连接开发电脑(客户端)和调试手机(服务端)的工具。

包含如下三个部分:

  1. Client端:运行在开发机器中,也就是你的开发PC机,用来发送ADB命令。
  2. Daemon守护进程:运行在调试设备中,可以是手机,也可以是模拟器,用来接收并执行ADB命令。
  3. Server端:作为一个后台进程运行在开发机器中(PC机)。 用来管理PC中的Client端和手机Daemon守护进程之间的通信。

如下图所示:

说明:

当你执行一条ADB命令的时候,ADB客户端会先接收你输入的命令,然后ADB客户端会把命令发送给ADB服务器,ADB服务器再把命令发送给手机中的Daemon(守护进程)。

Daemon负责技术Server端发送过来的命令,并且在手机中执行该命令。

我们可以看到上图中的箭头都是双向的。

也就是说Daemon执行完的结果会返回给Server端,Server端再传递给Client端。

Client端再给终端程序显示。

总结:

  • Android手机必须和电脑建立连接。
  • Windows系统命令行终端中执行的命令,会发送到Andorid设备上执行。

3、通过ADB命令连接安卓模拟器

国内有很多款安卓模拟器,比如逍遥、雷电、MUMU、夜神等,我们以逍遥模拟器为例。

模拟器进行App自动化测试时,需要使用ADB来连接模拟器,链接后才能找到该手机。

具体操作步骤:

(1)安装安卓模拟器

在Windows环境下安装逍遥模拟器,执行XYAZ-Setup.exe默认安装即可。

(2)ADB命令连接安卓模拟器

连接逍遥模拟器,21503为逍遥模拟器的默认端口号。

1)打开命令行窗口,进入安装目录下...\Microvirt\MEmu目录。

2)执行连接命令adb connect 127.0.0.1:21503

注意1:如果不进入到...\Microvirt\MEmu目录中执行adb链接命令,会提示如下:

提示:开始的时候会出现这种情况,之后就没有这种问题了。打开命令行就可以直接执行ADB命令了。

注意2:ADB链接安卓模拟器的时候,模拟器要开启,否则出现如下提示:

3)执行查看所有连接的模拟器命令adb devices

如图所示:已经连上模拟器。

说着直接输入adb,出现如下,也是配置成功了。

C:\Users\L>adb
Android Debug Bridge version 1.0.41
Version 29.0.6-6198805
Installed as F:\DevInstall\envs\android-sdk-windows\platform-tools\adb.exe global options:
-a listen on all network interfaces, not just localhost
-d use USB device (error if multiple devices connected)
-e use TCP/IP device (error if multiple TCP/IP devices available)
-s SERIAL use device with given serial (overrides $ANDROID_SERIAL)
-t ID use device with given transport id
-H name of adb server host [default=localhost]
-P port of adb server [default=5037]
-L SOCKET listen on given socket for adb server [default=tcp:localhost:5037] ...省略后面内容...

(3)常用Android模拟器端口号

链接Android模拟器命令adb connect

  • 逍遥模拟器:adb connect 127.0.0.1:21503
  • 夜神模拟器:adb connect 127.0.0.1:62001
  • 雷电模拟器:adb connect 127.0.0.1:5555
  • MuMu模拟器:adb connect 127.0.0.1:7555
  • 天天模拟器:adb connect 127.0.0.1:6555
  • 海马模拟器:adb connect 127.0.0.1:26944

『与善仁』Appium基础 — 3、ADB命令介绍的更多相关文章

  1. 『与善仁』Appium基础 — 8、Appium自动化测试框架介绍

    目录 1.主流的移动端自动化测试框架 (1)Robotium (2)Macaca (3)Appium 2.自动化测试工具的选择 3.Appium简介 提示:我们前面说的Android环境搭建和adb命 ...

  2. 『与善仁』Appium基础 — 15、使用Appium的第一个Demo

    我们使用Python语言作为测试脚本的编写语言. 执行脚本前提: Android模拟器或者手机是开机状态. 使用确保电脑和Android设备进行了链接. 也就是使用ADB命令adb connect链接 ...

  3. 『与善仁』Appium基础 — 16、APPium基础操作API

    目录 1.前置代码 2.安装和卸载APP 3.判断APP是否已安装 4.关闭APP软件和关闭驱动对象 5.发送文件到手机和获取手机中的文件 6.获取当前屏幕内元素结构(重点) 7.脚本内启动其他APP ...

  4. 『与善仁』Appium基础 — 18、元素定位工具(二)

    目录 1.Appium Inspector介绍 2.Appium Inspector打开方式 3.Appium Inspector布局介绍 4.Appium Inspector工具的配置 5.Appi ...

  5. 『与善仁』Appium基础 — 9、补充:C/S架构和B/S架构说明

    目录 1.C/S架构和B/S架构概念 2.C/S结构与B/S架构的区别 3.C/S架构和B/S架构优点和缺点 (1)B/S模式的优点和缺点: (2)C/S模式的优点和缺点: 1.C/S架构和B/S架构 ...

  6. 『与善仁』Appium基础 — 10、Appium基本原理

    目录 1.Appium自动化测试架构 2.Appium架构图 3.Session说明 4.Desired Capabilities说明 5.Appium Server说明 6.Appium Clien ...

  7. 『与善仁』Appium基础 — 12、Appium的安装详解

    目录 (一)Appium server安装 方式一:(桌面方式:推荐) 1.Appium Desktop下载 2.Appium Desktop安装 3.Appium Desktop使用 方式二:(No ...

  8. 『与善仁』Appium基础 — 14、Appium测试环境搭建

    目录 1.Appium测试环境搭建整体思路 (1)Android测试环境搭建 (2)Appium测试环境搭建 (3)测试脚本语言的环境搭建 2.Appium在Android端和IOS端的工作流程 (1 ...

  9. 『与善仁』Appium基础 — 17、元素定位工具(一)

    目录 1.uiautomatorviewer介绍 2.uiautomatorviewer工具打开方式 3.uiautomatorviewer布局介绍 4.uiautomatorviewer工具的使用 ...

  10. 『与善仁』Appium基础 — 19、元素定位工具(三)

    目录 1.Chrome Inspect介绍 2.Chrome Inspect打开方式 3.Chrome Inspect工具的使用 (1)Chrome Inspect工作前提 (2)Chrome Ins ...

随机推荐

  1. YOLOv4实用训练实践

    YOLOv4实用训练实践 准备工作 推荐使用Ubuntu 18.04 CMake >= 3.8: https://cmake.org/download/ CUDA >= 10.0: htt ...

  2. MindSpore图像分类模型支持(Lite)

    MindSpore图像分类模型支持(Lite) 图像分类介绍 图像分类模型可以预测图片中出现哪些物体,识别出图片中出现物体列表及其概率. 比如下图经过模型推理的分类结果为下表: 类别 概率 plant ...

  3. 用OpenCV进行摄像机标定

    用OpenCV进行摄像机标定 照相机已经存在很长时间了.然而,随着廉价针孔相机在20世纪末的引入,日常生活中变得司空见惯.不幸的是,这种廉价伴随着它的代价:显著的扭曲.幸运的是,这些常数,通过校准和一 ...

  4. HDFS 05 - HDFS 常用的 Java API 操作

    目录 0 - 配置 Hadoop 环境(Windows系统) 1 - 导入 Maven 依赖 2 - 常用类介绍 3 - 常见 API 操作 3.1 获取文件系统(重要) 3.2 创建目录.写入文件 ...

  5. UI自动化在RobotFramework中采用的分层设计

    RF测试数据 RF测试数据由4种表数据组成.这些测试数据由表的第一个单元格标识,名称和用法如下: 表名 用法 别名 设置表 导入测试库,资源文件和变量文件.为测试套件和测试用例定义元数据 Settin ...

  6. 对话Apache Hudi VP, 洞悉数据湖的过去现在和未来

    Apache Hudi是一个开源数据湖管理平台,用于简化增量数据处理和数据管道开发,该平台可以有效地管理业务需求,例如数据生命周期,并提高数据质量.Hudi的一些常见用例是记录级的插入.更新和删除.简 ...

  7. Java IO学习笔记八:Netty入门

    作者:Grey 原文地址:Java IO学习笔记八:Netty入门 多路复用多线程方式还是有点麻烦,Netty帮我们做了封装,大大简化了编码的复杂度,接下来熟悉一下netty的基本使用. Netty+ ...

  8. 5.23考试总结(NOIP模拟2)

    5.23考试总结(NOIP模拟2) 洛谷题单 看第一题第一眼,不好打呀;看第一题样例又一眼,诶,我直接一手小阶乘走人 然后就急忙去干T2T3了 后来考完一看,只有\(T1\)骗到了\(15pts\)[ ...

  9. Oracle11g RAC详解

    升级变化:          Oracle10g,高版本都是由低版本升级得到的.要装10.2.0.4,必须先安装database10.2.0.1,然后给这个ORACLE_HOME打补丁p6180189 ...

  10. Linux常用目录解释

    FHS:Linux /boot:系统启动相关的文件,如内核,initrd,以及grub(bootloader) /dev :设备文件: 块设备:随机访问,数据块 字符设备,线性访问,按字符为单位 设备 ...