body { font-family: Arial, sans-serif; line-height: 1.6; margin: 20px }
h1, h2 { color: rgba(51, 51, 51, 1) }
pre { background-color: rgba(244, 244, 244, 1); padding: 10px; border-radius: 5px; overflow-x: auto }
.error { color: rgba(255, 0, 0, 1); font-weight: bold }
.solution { color: rgba(0, 128, 0, 1); font-weight: bold }

OAS使用时的ADB连接错误。

原始错误信息

ERROR        | 19:43:07.855 | FileNotFoundError: [WinError 2] 系统找不到指定的文件。
┌───────────────── Traceback (most recent call last) ─────────────────┐
│ C:\Users\xx\AppData\Roaming\Python\Python310\site-packages\adbu │
│ tils\__init__.py:103 in _safe_connect │
│ │
│ 100 │ │
│ 101 │ def _safe_connect(self): │
│ 102 │ │ try: │
│ > 103 │ │ │ return self._create_socket() │
│ 104 │ │ except ConnectionRefusedError: │
│ 105 │ │ │ subprocess.run([adb_path(), "start-server"], time │
│ enough for adb start │
│ 106 │ │ │ return self._create_socket() │
│ │
│ ┌──────────────────────────── locals ─────────────────────────────┐ │
│ │ self = <adbutils._AdbStreamConnection object at │ │
│ │ 0x000001F72FDB3940> │ │
│ └─────────────────────────────────────────────────────────────────┘ │
│ │
│ C:\Users\xx\AppData\Roaming\Python\Python310\site-packages\adbu │
│ tils\__init__.py:95 in _create_socket │
│ │
│ 92 │ │ adb_port = self.__port │
│ 93 │ │ s = socket.socket() │
│ 94 │ │ try: │
│ > 95 │ │ │ s.connect((adb_host, adb_port)) │
│ 96 │ │ │ return s │
│ 97 │ │ except: │
│ 98 │ │ │ s.close() │
│ │
│ ┌──────────────────────────── locals ─────────────────────────────┐ │
│ │ adb_host = '127.0.0.1' │ │
│ │ adb_port = 5037 │ │
│ │ s = │ │
│ │ self = <adbutils._AdbStreamConnection object at │ │
│ │ 0x000001F72FDB3940> │ │
│ └─────────────────────────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────────────┘
ConnectionRefusedError: [WinError 10061]
由于目标计算机积极拒绝,无法连接。

错误解析

FileNotFoundError

这个错误通常意味着系统无法找到指定的文件。在ADB上下文中,这可能是由于ADB可执行文件未正确安装或其路径未添加到系统的环境变量中。

ConnectionRefusedError

当尝试连接到ADB服务器时,如果服务器没有运行或配置错误,就会抛出此错误。具体来说,当尝试连接到127.0.0.1:5037(默认的ADB服务器地址和端口)时,如果服务器未启动,就会出现“由于目标计算机积极拒绝,无法连接”的错误信息。

解决步骤

1. 安装ADB

  • Windows版本:https://dl.google.com/android/repository/platform-tools-latest-windows.zip

2. 手动启动ADB服务

  • 打开CMD,手动启动ADB。
adb start-server
  • 如果一切正常,命令行将返回类似于* daemon started successfully *的消息,表明ADB服务已成功启动。
  • 如果遇到权限问题,可能需要以管理员身份运行命令提示符或终端。

3. 验证ADB服务状态

  • 在ADB服务启动后,可以通过执行以下命令来检查当前连接的设备:
adb devices

结语

解决ADB问题后,脚本设置:截屏使用ADB_nc,控制方式使用ADB,正常使用基本无问题。

OAS常见错误的更多相关文章

  1. 初识JAVA(二)(送给Java和安卓初学者)----常见错误

    博主接着上篇的来讲哦,以后的更新中,博主会出一些练习题,有兴趣的可以做做然后吧代码粘贴到下面,大家可以一起研究学习,一起进步,本篇文章主要讲的是: 一.常见错误 二.连接上篇一起的训练 无论是什么方向 ...

  2. ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock

    ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock 通过终端安装程序sudo apt-get install xxx时出错:E: Could not ...

  3. coreseek常见错误原因及解决方法

    coreseek常见错误原因及解决方法 Coreseek 中文全文检索引擎 Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和 ...

  4. Android Fragment使用(二) 嵌套Fragments (Nested Fragments) 的使用及常见错误

    嵌套Fragment的使用及常见错误 嵌套Fragments (Nested Fragments), 是在Fragment内部又添加Fragment. 使用时, 主要要依靠宿主Fragment的 ge ...

  5. C语言初学者代码中的常见错误与瑕疵(23)

    见:C语言初学者代码中的常见错误与瑕疵(23)

  6. struts2.5框架使用通配符指定方法常见错误

    struts2.5框架使用通配符指定方法(常见错误) 在学习struts框架时经常会使用到通配符调用方法,如下: <package name="shop" namespace ...

  7. .Net常见错误

    常见错误 #1: 把引用当做值来用,或者反过来 C++ 和其他很多语言的程序员,习惯了给变量赋值的时候,要么赋单纯的值,要么是现有对象的引用.然而,在C# 中,是值还是引用,是由写这个对象的程序员决定 ...

  8. WCF项目中出现常见错误的解决方法:基础连接已经关闭: 连接被意外关闭

    在我们开发WCF项目的时候,常常会碰到一些莫名其妙的错误,有时候如果根据它的错误提示信息,一般很难定位到具体的问题所在,而由于WCF服务的特殊性,调试起来也不是那么方便,因此往往会花费不少时间来进行跟 ...

  9. Python程序的常见错误(收集篇)

    关于Python Python是一门解释性的,面向对象的,并具有动态语义的高级编程语言.它高级的内置数据结构,结合其动态类型和动态绑定的特性,使得它在快速应用程序开发(Rapid Applicatio ...

  10. 【ubuntu 】常见错误--Could not get lock /var/lib/dpkg/lock

    ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock 通过终端安装程序sudo apt-get install xxx时出错: E: Could not ...

随机推荐

  1. Java类和对象 小白版

    一.类 一.类的定义 具有同种属性的对象称为类.定义了它所包含的全体对象的公共特征和功能,对象就是类的一个实例化. 类的三种常见成员:属性.方法.构造器 二.类的编写 1.类名的定义: 2.类属性(特 ...

  2. 进击的AI工具集:全能AI阅读软件Walles AI

    在信息爆炸的时代,快速而准确地阅读大量内容,对于每个人都是一种常态挑战. 这些海量信息资讯和知识的涌入,可能导致信息过载,手忙脚乱,且分神费力. 好消息是,我们已经进入了 AIGC时代,随着ChatG ...

  3. 【牛客刷题】HJ15 求int型正整数在内存中存储时1的个数

    题目链接 题倒是很简单,最开始用了这么一种解法: package main import "fmt" func main() { a := 0 fmt.Scan(&a) s ...

  4. GNU make-Makefile文件简介

    Makefile简介 Makefile是一种特殊格式的文件,被make工具使用来管理软件的构建过程.Makefile定义了一组规则和依赖关系,告诉make如何编译和链接程序. Makefile语句 T ...

  5. CMake构建学习笔记6-giflib库的构建

    前面构建的zlib.libpng.libjpeg和libtiff都提供了CMakeList.txt文件,因此都可以通过CMake进行构建.不过有的依赖库是并没有CMakeList.txt文件,也就是官 ...

  6. IE中在线预览PDF文件

    今天在项目中偶然遇到一个需要在线查看pdf的需求.在查阅一些资料之后使用了最简单的写法(需要在客户端安装AdbeRdr11000_zh_CN_11.0.0.379.exe软件). 还有其他方法可以实现 ...

  7. MSYS2、MinGW、Cygwin 关系梳理

    还记得大一刚开始写 C 代码时,经常看到 MSYS2.MinGW.Cygwin 等名词.对于第一次接触编程的我来说这些名词让我眼花缭乱.当时查阅了一些资料,但是对于这些名词的解释始终让我云里雾里.现在 ...

  8. 【已解决】如果将MySQL数据库中的表生成PDM

    数据库表PDM关系图 |  原创作者/编辑:凯哥Java |  分类:经验分享 有时候,我们需要MySQL数据库中的表生成对应的PDM文件,这里凯哥就讲讲第一种将MySQL数据库的表生成对应的PDM文 ...

  9. reinstall nodejs 后跑不到 command

    现象 : node -v 可以跑 , ng new 这些就跑不到 (确保已经安装了 global cli) 那多半是 path 的问题 https://stackoverflow.com/questi ...

  10. CSS – word-break, overflow-wrap, word-wrap, white-space

    参考 word-break 和 word-wrap 的区别 (我以为这篇已经很厉害了) 彻底搞懂word-break.word-wrap.white-space (没想到, 这一篇更厉害) white ...