
escrcpy 设备连接与选择指南serial、TCP/IP 无线连接与 autostart 全解析【免费下载链接】escrcpy Display and control your Android device graphically with scrcpy.项目地址: https://gitcode.com/GitHub_Trending/es/escrcpy本文以 escrcpy 项目文档中的 connection.md 为核心系统讲解 scrcpy 类工具的设备选择机制serial / USB / TCP-IP 四类选择方式、--tcpip无线连接自动与手动两种路径以及基于 AutoAdb 的自动启动方案并结合 escrcpy 仓库源码说明这些连接能力在图形界面中的实际落地方式。读完本文你将能处理多设备环境下选谁、怎么选的问题并能在同一局域网内完成无线投屏的配置与排障。设备选择Selectionadb devices会列出所有已连接的 Android 设备。与adb命令的行为一致当且仅当恰好只有一台设备处于连接状态时scrcpy 会自动选中它无需任何参数scrcpy一旦存在多台设备就必须显式指定目标设备。scrcpy 提供了四种指定方式escrcpy 的镜像进程同样严格遵循这一约定——其 scrcpy 中间件在构造命令时统一拼接--serialserial可见 serial 是贯穿 CLI 与 GUI 两端的核心选择键见 desktop/electron/middleware/scrcpy/index.js 中的createMirrorProcess。方式一按 serial 指定serial序列号是设备在 ADB 体系中的唯一标识通过-s/--serial传入scrcpy --serial0123456789abcdef scrcpy -s 0123456789abcdef # 短参数形式 # 若设备通过 TCP/IP 连接serial 即为 ip:port与 adb 行为一致 scrcpy --serial192.168.1.1:5555注意最后一行无线连接时 serial 不是一串编号而是ip:port。escrcpy 的设备列表中同样以serialNo区分设备其 DeviceSelectionHelper 还会对相同serialNo的历史/在线记录做去重合并避免同一物理设备因 USB 与无线双重连接出现重复项。方式二按传输通道指定USB / TCP-IP当多台设备中只有一台走 USB、或只有一台走 TCP/IP 时可用以下参数精确命中# 选择唯一一台 USB 连接设备 scrcpy --select-usb scrcpy -d # 短参数形式 # 选择唯一一台 TCP/IP 连接设备 scrcpy --select-tcpip scrcpy -e # 短参数形式这两条参数语义上与adb -d、adb -e保持一致若符合通道条件的设备数量不为 1则选择失败。方式三直接连入已在监听的 TCP/IP 设备若目标设备已经开启了 ADB 无线监听端口典型为 5555可以直接用--tcpip参数把地址交给 scrcpy它会先完成 ADB 连接再启动scrcpy --tcpip192.168.1.1:5555 scrcpy --tcpip192.168.1.1 # 缺省端口为 5555方式四通过环境变量 ANDROID_SERIALserial 还可以通过环境变量ANDROID_SERIAL提供该变量同样被adb读取因此配置一次即可同时作用于adb与 scrcpy# bash / zsh export ANDROID_SERIAL0123456789abcdef scrcpy:: cmd set ANDROID_SERIAL0123456789abcdef scrcpy# PowerShell $env:ANDROID_SERIAL 0123456789abcdef scrcpy在 escrcpy 中serial 选择逻辑被封装在 selection/index.js 的DeviceSelectionHelper它先将设备过滤为在线状态emulator/device再按serialNo分组去重GUI 用户无需手动记忆 serial——点击设备行即可自动携带正确标识发起镜像。TCP/IP 无线连接wirelessscrcpy 本身不负责传输通道它始终通过adb与设备通信而adb天然支持 TCP/IP 连接。无线模式的前提是电脑与设备处于同一网络。escrcpy 的 adb 中间件完整复刻了这套能力包括connect/disconnect/tcpip/ 获取设备 IP 等接口见 desktop/electron/middleware/adb/index.js。自动模式--tcpip--tcpip有两种用法覆盖不知道 IP和已知 IP两种场景。场景 A不知道设备 IP或设备尚未开启 TCP/IP 模式先用 USB 连接设备然后直接执行scrcpy --tcpip # 不带参数scrcpy 会自动完成三件事自动探测设备 IP 地址与 ADB 端口、必要时开启设备的 TCP/IP 模式、在启动投屏前先完成 ADB 无线连接。escrcpy 的设备列表中也有等价的一键入口点击设备行的 Wi-Fi 图标会依次调用getDeviceIP获取地址、tcpip(id, 5555)开启监听端口、再以host:port触发连接见 wireless-action/index.vue。场景 B设备已在监听典型端口 5555scrcpy --tcpip192.168.1.1 # 缺省端口 5555 scrcpy --tcpip192.168.1.1:5555强制重连在地址前加前缀可强制与目标地址重新建立连接适用于设备更换 IP 或连接状态异常的情况scrcpy --tcpip192.168.1.1手动模式adb 命令不依赖--tcpip完全用adb手工打通无线链路步骤清晰、可控性最强用 USB 线将设备接入电脑。让设备连上与电脑相同的 Wi-Fi 网络。获取设备 IP进入 设置 → 关于手机 → 状态 查看或执行命令adb shell ip route | awk {print $9}在设备上开启 ADB 无线监听adb tcpip 5555拔掉 USB 线。建立无线连接将DEVICE_IP替换为第 3 步查到的地址adb connect DEVICE_IP:5555像往常一样运行scrcpy。使用完毕后断开连接adb disconnectescrcpy 中对应的断开入口同样存在已处于 Wi-Fi 状态的设备行会显示断开按钮内部调用adb disconnect id并刷新设备列表与第 8 步语义一致wireless-action/index.vue 的handleStop。Android 11 的免 USB 方案自 Android 11 起系统内置无线调试选项可在开发者选项中直接获取配对码与 IP:port配合adb pair完成配对后即可绕过物理 USB 连接。escrcpy 的 adb 中间件实现了pair(host, port, code)接口其无线发现mDNS 扫描 端口探测 并发连接也封装在 scanner/index.js 中GUI 中的无线连接/发现按钮即走这条链路。自动启动Autostart连接类工具的高频使用场景是设备一插上就自动开始投屏。scrcpy 作者提供了配套小工具 AutoAdb它能在检测到新 Android 设备接入时执行任意命令最典型的用法是直接拉起 scrcpyautoadb scrcpy -s {}其中{}会被 AutoAdb 替换为实际设备的 serial从而把设备接入事件与启动 scrcpy 并选中该设备绑定起来。这与本文第一部分serial 是选择设备的唯一键形成闭环事件驱动 serial 定位即插即用。escrcpy 自身也具备类似的自动化能力其 adb 中间件通过trackDevices()监听设备上线/下线事件desktop/electron/middleware/adb/index.js 的watch并在设备视图挂载时注册监听desktop/src/views/device/index.vue 的onAdbWatch可据此实现自动镜像、批量操作等扩展行为——理解 CLI 端的autoadb机制有助于理解 GUI 端事件驱动连接的设计意图。小结四种选择方式速查表场景命令说明仅一台设备scrcpy自动选中多台设备按 serialscrcpy -s 0123456789abcdefTCP/IP 时为ip:port多台设备唯一 USBscrcpy -d即--select-usb多台设备唯一 TCP/IPscrcpy -e即--select-tcpip设备已在监听 5555scrcpy --tcpip192.168.1.1加前缀强制重连全局默认设备export ANDROID_SERIAL...adb与 scrcpy 共用设备接入自动启动autoadb scrcpy -s {}{}替换为 serial实践建议日常单设备直接运行scrcpy多设备环境优先用-s精确指定避免-d/-e因不唯一而失败无线场景建议优先使用--tcpip自动模式仅在需要精细控制链路时才走adb tcpipadb connect手动流程。若需在图形界面中体验同等能力可参照 device 视图 与 scrcpy 中间件 的源码理解其内部实现。【免费下载链接】escrcpy Display and control your Android device graphically with scrcpy.项目地址: https://gitcode.com/GitHub_Trending/es/escrcpy创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考