跳转到内容

Scrcpy 控制模式

禁用所有控制(与设备交互的部分:按键输入、鼠标事件、拖拽文件):

Terminal window
scrcpy --no-control
scrcpy -n # short version

参见键盘鼠标.

在不镜像的情况下控制设备:

Terminal window
scrcpy --no-video --no-audio

默认情况下,当关闭视频播放时鼠标被禁用。

使用相对坐标鼠标进行控制时,启用 UHID 鼠标模式:

Terminal window
scrcpy --no-video --no-audio --mouse=uhid
scrcpy --no-video --no-audio -M # short version

若同时使用 UHID 键盘,请显式设置:

Terminal window
scrcpy --no-video --no-audio --mouse=uhid --keyboard=uhid
scrcpy --no-video --no-audio -MK # short version

若改用 AOA(仅支持 USB):

Terminal window
scrcpy --no-video --no-audio --keyboard=aoa --mouse=aoa

每当 Android 剪贴板发生变化,都会自动同步到电脑剪贴板。

所有 Ctrl 快捷键都会转发到设备。通常:

  • Ctrl+c 为复制
  • Ctrl+x 为剪切
  • Ctrl+v 为粘贴(在电脑到设备的剪贴板同步之后)

通常表现与预期一致。

但实际行为取决于当前活动应用。例如,TermuxCtrl+c 时会发送 SIGINT,K-9 Mail 会创建新邮件。

在此类情况下进行复制、剪切与粘贴(仅支持 Android ≥ 7):

  • MOD+c 注入 COPY
  • MOD+x 注入 CUT
  • MOD+v 注入 PASTE(在电脑到设备的剪贴板同步之后)

此外,MOD+Shift+v 会将电脑剪贴板文本作为一串按键事件注入。当某组件不支持文本粘贴时(如 Termux),此方法很有用,但可能破坏非 ASCII 内容。

警告: 将电脑剪贴板粘贴到设备(无论通过 Ctrl+v 还是 MOD+v)会把内容复制到 Android 剪贴板。因此,任意 Android 应用都可能读取其内容。避免以这种方式粘贴敏感信息(如密码)。

某些 Android 设备在以编程方式设置设备剪贴板时行为异常。提供 --legacy-paste 选项以更改 Ctrl+vMOD+v 的行为,使其也将电脑剪贴板文本作为一串按键事件注入(与 MOD+Shift+v 相同)。

若要禁用剪贴板自动同步,使用 --no-clipboard-autosync

捏合缩放、旋转与倾斜手势模拟

Section titled “捏合缩放、旋转与倾斜手势模拟”

模拟“捏合缩放”:Ctrl+按住左键并拖动

更具体地说,按住 Ctrl 并按下鼠标左键。在左键释放前,所有鼠标移动都会围绕屏幕中心缩放或旋转内容(若应用支持)。

https://github.com/Genymobile/scrcpy/assets/543275/26c4a920-9805-43f1-8d4c-608752d04767

模拟垂直倾斜手势:Shift+按住左键并上下拖动

https://github.com/Genymobile/scrcpy/assets/543275/1e252341-4a90-4b29-9d11-9153b324669f

模拟水平倾斜手势:Ctrl+Shift+按住左键并左右拖动

从技术上讲,scrcpy 会在屏幕中心对称位置生成一个“虚拟手指”的额外触控事件。按住 Ctrl 时会同时取反 xy 坐标;只按 Shift 时仅取反 x,按 Ctrl+Shift 时仅取反 y

这仅适用于默认鼠标模式(--mouse=sdk)。

要安装 APK,拖拽一个以 .apk 结尾的文件到 scrcpy 窗口。

不会有可视化反馈,但会在控制台打印日志。

要将文件推送到设备的 /sdcard/Download/,拖拽一个(非 APK)文件到 scrcpy 窗口。

不会有可视化反馈,但会在控制台打印日志。

目标目录可在启动时更改:

Terminal window
scrcpy --push-target=/sdcard/Movies/