连接

选择

如果恰好有一个设备连接(即通过adb devices列出),则自动将其选中。

然而,如果有多个设备连接,您必须通过以下四种方式之一指定要使用的设备: - 通过其序列号:

scrcpy --serial=0123456789abcdef
scrcpy -s 0123456789abcdef   # 简洁版本

# 序列号是IP:端口,如果通过TCP/IP连接,则与adb的行为相同
scrcpy --serial=192.168.1.1:5555
  • 通过USB连接(如果恰好有一个):
scrcpy --select-usb
scrcpy -d   # 简洁版本
  • 通过TCP/IP连接(如果恰好有一个):
scrcpy --select-tcpip
scrcpy -e   # 简洁版本
  • 已经在TCP/IP上监听的设备(参见下文):
scrcpy --tcpip=192.168.1.1:5555
scrcpy --tcpip=192.168.1.1        # 默认端口是5555

序列号也可以通过环境变量ANDROID_SERIAL提供(也被adb使用):

# 在bash中
export ANDROID_SERIAL=0123456789abcdef
scrcpy
:: 在cmd中
set ANDROID_SERIAL=0123456789abcdef
scrcpy
# 在PowerShell中
$env:ANDROID_SERIAL = '0123456789abcdef'
scrcpy

TCP/IP(无线)

scrpcy 使用adb与设备通信,而adb可以通过TCP/IP连接到设备。设备必须与计算机位于同一网络。

自动

选项--tcpip允许自动配置连接。有两种变体。

如果设备上的adb TCP/IP模式已禁用(或者您不知道IP地址),请通过USB连接设备,然后运行:

scrcpy --tcpip   # 无参数

它将自动找到设备的IP地址和adb端口,如果需要,启用TCP/IP模式,然后连接到设备,然后再启动。

如果设备(在本例中可在192.168.1.1处访问)已经在端口(通常是5555)上监听来自adb的传入连接,则运行:

scrcpy --tcpip=192.168.1.1       # 默认端口是5555
scrcpy --tcpip=192.168.1.1:5555

手动

或者,您可以使用adb手动启用TCP/IP连接:

  1. 将设备插入计算机的USB端口。
  2. 将设备连接到与计算机相同的Wi-Fi网络。
  3. 获取您的设备IP地址,在设置→关于手机→状态中,或者在执行以下命令时获得:

    bash adb shell ip route | awk '{print $9}'

  4. 在您的设备上启用adb通过TCP/IP:adb tcpip 5555

  5. 断开设备连接。
  6. 连接到您的设备:adb connect DEVICE_IP:5555(替换DEVICE_IP为您找到的设备IP地址)。
  7. 如常运行scrcpy
  8. 完成后运行adb disconnect

自Android 11起,无线调试选项允许绕过直接将设备物理连接到计算机的需求。

自动启动

一个由scrcpy作者开发的小工具允许在每次新Android设备连接时运行任意命令:AutoAdb。它可以用来启动scrcpy:

autoadb scrcpy -s '{}'