admin管理员组

文章数量:1516870

一、电脑安装abd、scrcpy

1、安装abd

2、brew install scrcpy

  • macOS 系统 :可以使用 Homebrew 进行安装,在终端中运行以下命令:

brew install scrcpy

二、连接 Android 设备

1、USB 连接:
  • 用 USB 数据线将 Android 设备连接到计算机。

  • 在 Android 设备上,进入“设置” - “关于手机”,多次点击“版本号”开启开发者选项。

  • 在开发者选项中,开启“USB 调试”功能。当设备连接到计算机时,可能会弹出授权提示,点击“允许”授权计算机进行调试。

2、无线连接
  1. 确保 Android 设备和计算机连接到同一 Wi-Fi 网络。

  2. 通过 USB 数据线将 Android 设备连接到计算机,在终端中运行以下命令,使设备监听 5555 端口:

# 查看已连接的设备

adb devices -l

# 断开指定的设备

adb disconnect 192.168.0.101:5555 
adb disconnect 10ADCQ2XEH000QX

# 断开adb连接

adb kill-server

# 启用adb

adb start-server
  • 1.监听5555端口

    adb tcpip 5555
  • 2.拔掉手机数据线,终端窗口启动 scrcpy

在完成上述安装和连接步骤后,打开终端,进入 scrcpy 可执行文件所在的目录(如果是通过包管理器安装的,可直接在终端中操作),运行以下命令启动 scrcpy:

scrcpy

此时,Android 设备的屏幕会投射到计算机上,你可以使用鼠标和键盘在计算机上控制 Android 设备。

常用操作和功能

  • 控制设备 :使用鼠标点击、拖动来模拟触摸操作,使用键盘输入文本。

  • 复制粘贴 :在计算机上复制文本后,在 Android 设备上长按输入框,选择“粘贴”;在 Android 设备上复制的文本也可以在计算机上粘贴。

  • 全屏显示 :按下 Ctrl + f 组合键可以切换全屏显示模式。

  • 旋转屏幕 :按下 Ctrl + r 组合键可以旋转屏幕显示方向。

  • 录制屏幕 :在启动 scrcpy 时,添加 --record file.mp4 参数,可将屏幕投射过程录制为 MP4 文件,例如:

scrcpy --record file.mp4

停止使用

要停止 scrcpy,关闭投射窗口或在终端中按下 Ctrl + c 组合键即可。

通过以上步骤,你就可以轻松使用 scrcpy 实现 Android 设备屏幕投射和控制。

scrcpy --tcpip

常见报错1: “error: more than one device/emulator”

表明当前有多个设备(包括手机、模拟器等 )通过USB连接到电脑,adb无法确定要对哪个设备执行 adb tcpip 5555 命令。以下是解决办法:

1. 断开多余设备

检查连接到电脑的设备,将暂时不需要使用scrcpy连接的手机、模拟器等断开连接 ,只保留要进行操作的那一个设备,然后重新执行 adb tcpip 5555 命令。

2. 指定目标设备

如果不想断开其他设备,可以使用adb的 -s 参数指定目标设备。具体步骤如下:

  1. 获取设备列表及序列号

在终端或命令提示符中输入 adb devices ,会列出所有已连接设备,每个设备对应一个序列号 。例如:

List of devices attached 10ADCQ2XEH000QX device 10.20.0.246:5555 device

  1. 指定设备执行命令

假设要对 10.20.0.246:5555 对应的设备执行 adb tcpip 5555 命令,在macOS/Linux终端或Windows命令提示符中输入 adb -s 10.20.1.198:5555 tcpip 5555 ,这样就能明确告知adb对特定设备进行操作。 adb -s 10ADCQ2XEH000QX tcpip 5555

常见错误2:“ERROR: Select a device via -s (--serial), -d (--select-usb) or -e (--select-tcpip)”

scrcpy scrcpy 3.2 < ERROR: Multiple (3) ADB devices: ERROR: --> (usb) HXB4C20401001883 device LRA_AL00 ERROR: --> (tcpip) 10.20.0.174:5555 device LRA_AL00 ERROR: --> (tcpip) 10.20.0.246:5555 device V2338A ERROR: Select a device via -s (--serial), -d (--select-usb) or -e (--select-tcpip) ERROR: Server connection failed

这个错误提示表明当前有多个设备连接到电脑,scrcpy无法确定要连接哪个设备 。解决方法如下:

1. 断开多余设备

检查连接到电脑的设备,将暂时不需要投屏的手机、模拟器等断开连接,只保留要进行投屏操作的那一个设备,然后重新运行 scrcpy 命令。

2. 指定目标设备

如果不想断开其他设备,可以使用scrcpy提供的参数指定目标设备:

  • 通过设备序列号指定(-s/--serial ) :使用 adb devices 命令获取设备序列号,比如设备序列号为 HX B4C20401001883 ,运行命令 scrcpy -s HX B4C20401001883 ,即可指定对该设备进行投屏。

# 获取设备序列号: adb devices # 指定对该设备进行投屏 scrcpy -s 10.20.1.66:5555

  • 选择USB连接设备(-d/--select -usb ) :若目标设备是通过USB连接的,运行 scrcpy -d ,scrcpy会自动选择USB连接的设备进行投屏。

scrcpy -d
  • 选择TCP/IP连接设备(-e/--select -tcpip ) :要是目标设备是通过TCP/IP连接的,运行 scrcpy -e ,scrcpy会选取TCP/IP连接的设备来投屏。

scrcpy -e

当遇到 `adb` 中存在离线设备想将其移除时,可尝试以下方法:

### 方法一:使用 `adb kill-server` 和 `adb start-server` 命令

1. 在终端中输入 `adb kill-server` ,按下回车键。这一步是停止 `adb` 服务。

adb kill-server

2. 接着输入 `adb start-server` ,按下回车键。此命令会重新启动 `adb` 服务,重启过程中,`adb` 会重新扫描设备,通常能清理掉一些离线设备记录 。

adb start-server

### 方法二:使用 `adb devices -l` 结合 `adb -s <设备序列号> disconnect` 命令

1. 先在终端输入 `adb devices -l` ,按下回车键。此命令会列出所有设备及其详细信息,包括设备序列号等。

adb devices -l

2. 找到显示为离线状态设备对应的序列号,比如你图中的 `HXB4C20401001883:5555` 。

3. 然后在终端输入 `adb -s HXB4C20401001883:5555 disconnect` (将 `HXB4C20401001883:5555` 替换为你实际的离线设备序列号),按下回车键,尝试断开该离线设备连接,从设备列表中移除它 。

adb -s 设备序列号:端口 disconnect

### 方法三:重启电脑和设备

如果上述命令行方法都无法解决,可尝试重启运行 `adb` 命令的电脑,同时重启相关的安卓设备(如果是模拟器,可尝试重启模拟器 ),之后重新连接设备,再通过 `adb devices` 查看,此时离线设备记录可能已被清除。

本文标签: 命令按下回车编程