10分钟从USB投屏到多设备群控:QtScrcpy跨平台Android投屏与键鼠控制完整指南
【免费下载链接】QtScrcpyAndroid real-time display control software项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy
手机上发现一个应用 bug,屏幕太小看不清界面,切回电脑复制一行文本又要重新解锁——这类来回折腾,就是 Android 投屏控制软件要解决的问题。QtScrcpy 是一款免费的开源工具,通过 USB 或 WiFi 把 Android 手机实时投射到 Windows、macOS、Linux 电脑上,让鼠标键盘直接操控手机,无需 root,手机端也不安装任何 App。
一、连接前准备:一台手机加三个检查项
1. 手机需要满足的条件
- 系统版本Android 5.0 及以上(API 21);
- 在"设置 → 开发者选项"里打开USB 调试,这是投屏的前提;
- 部分品牌(如小米)还需要在 USB 调试里额外勾选允许模拟点击,否则会出现"看得到画面、点不动手机"的情况。
2. 三个平台各自的安装方式
| 平台 | 方式 | | -- | -- | | Windows / macOS | 从 Releases 下载预编译包,已内置 ADB,解压即用 | | Arch Linux | 终端执行yay -Syu qtscrcpy| | 其他 Linux 发行版 | 下载 Releases 的预编译包 |
Windows 和 macOS 的包都自带依赖,装完不用配环境。
3. USB 秒连的第一步
用数据线连上手机,打开程序点"刷新设备列表",看到设备号出现后点启动服务,约1 秒就能看到第一帧画面。投屏性能指标是 30~60 fps、1920×1080 及以上分辨率、35~70 ms 延迟,日常看文档、演示操作完全够用。
二、从 USB 切到无线:拔线投屏的操作顺序
无线投屏适合经常走动演示的场景:老师讲课时不用被数据线拴在讲台,产品经理在会议室边演示边走动。
1. 无线连接四步走
前提:手机和电脑在同一局域网。
- 先用 USB 连上手机,点"刷新设备列表";
- 点获取设备 IP,地址会自动填到无线区域;
- 点启动 adbd,再点无线连接;
- 再次"刷新设备列表",会出现一个 IP 开头的设备,选中它,点启动服务。
2. 什么时候需要重新插线
启动 adbd 之后,USB 线就可以拔掉,之后无线断开、重连都不需要再插线,除非手机重启导致 adbd 停止。如果长时间连不上,重启路由器并确认防火墙没有拦截相关端口。
三、投屏之后:控制、录制、传文件三件事
1. 用鼠标键盘操作手机
- 左键点击 = 触摸,鼠标移动 = 手指拖动;
- 右键双击:屏幕关闭时开屏,开启时相当于"返回";
- 中键单击= 主页键;
Ctrl+b也是返回,Ctrl+s是应用切换,Ctrl+n/Ctrl+Shift+n展开、收起通知栏; - 音量:
Ctrl+↑调大、Ctrl+↓调小;Ctrl+p模拟电源键,Ctrl+o关屏但保持投屏,主播做直播演示时这个组合很实用——手机屏常亮会明显增加耗电; - 窗口技巧:
Ctrl+f全屏,Ctrl+g按 1:1 像素显示(UI 走查时推荐),Ctrl+w或左键双击黑边去掉黑边; - 剪贴板双向同步:
Ctrl+c把手机剪贴板拷到电脑,Ctrl+Shift+v把电脑剪贴板注入手机(Android 7 以上)。
2. 屏幕录制与截图
"启动配置"里可以设置录像的比特率、分辨率、录制格式和保存路径。需要"只看手机不显示画面"时,勾选仅后台录制即可静默录屏,适合录 bug 复现步骤;勾选窗口置顶则让视频窗口始终浮在最上层,边演示边开其他软件。截图一键存为 PNG。
3. 拖拽装 APK 和传文件
把 APK 文件拖到投屏窗口,自动触发安装;把任意文件拖进窗口,会推送到手机端路径(默认/sdcard/,可在config/config.ini的PushFilePath里改)。测试同学拿一台电脑就能装包、传测试数据,不用来回插线拔线。
四、把手游玩出端游手感:按键映射怎么配
1. 直接用现成脚本
keymap/目录自带和平精英、第五人格、抖音等映射文件,覆盖开火、探头、方向盘、滑动等高频操作。启用流程:
- 在脚本下拉框选中脚本,连接手机并启动服务后点应用;
- 按
~键(即switchKey)切到自定义映射模式,再按一次切回普通模式; - 玩和平精英想用车载方向盘,记得在游戏里把移动方式设为单摇杆模式。
2. 自己写一份 JSON 映射
映射文件是 JSON,放进keymap/目录即可被识别,编写规则见 按键映射说明。三个核心概念:
- 相对坐标:屏幕宽高都用 1 表示,
(0.5, 0.5)就是屏幕正中,换分辨率也不用改文件; mouseMoveMap:把鼠标移动映射为手指拖动,FPS 游戏用它转视角;speedRatioX/speedRatioY调灵敏度,数值越大越迟钝;keyMapNodes:普通按键映射,支持单击、双击、多连点、拖拽(dragSpeed范围 0-1)、四键方向盘(KMT_STEER_WHEEL)几种类型。
写完点"刷新脚本",选中新脚本再应用即可生效。
3. 坐标对不准时怎么调试
两个办法:左键单击屏幕,控制台会打印当前点击的pos,直接抄进 JSON;或者在开发者选项里打开"显示指针位置"看触摸点坐标。
五、群控落地:多台设备同时操作的流程
1. 群控怎么用
QtScrcpy 支持多设备连接:左侧设备列表可以同时挂多台手机,每台一个独立窗口单独操作;开启群控后,你的鼠标键盘输入会同步到所有已连接设备,一次操作、多台生效。
2. 典型批量场景
- 应用测试:同一版本 App 装到不同机型,同步滑动页面观察兼容性差异;
- 设备初始化:新手机批量打开开发者选项、装统一的应用套件;
- 直播多号:一台电脑同时看几路画面,主号操作时副号跟着动。
3. 配合命令行做辅助
界面里的命令行框可以直接执行自定义 ADB 命令(暂不支持shell这类阻塞命令),配合"启动服务 / 停止所有服务"就能搭出"连上 → 装包 → 群控 → 断开"的批量流程。
六、连接不上、画面卡、控制失效:逐项排查
问题基本集中在连接和画面两类,对照 常见问题 自查最快。
1. 连接类
- 刷新后看不到设备:先用任意手机助手验证数据线能正常通信,再回来刷新;
adb server version doesn't match:电脑里同时跑了两个版本的 adb。任务管理器结束 adb 进程,或在config.ini的AdbPath里指定你正在用的那个 adb;- 报错
more than one device:在启动配置里去掉使用 Reverse的勾选再试。
2. 画面与控制类
- 看得到画面但点不动:小米等机型检查 USB 调试里是否开了"允许模拟点击";
- 中文输入不了:手机上装搜狗或 QQ 输入法即可;
- 能控制但没画面:控制台出现 shader 相关报错时,在
config.ini把解码方式改成 1 或 2 再试; Could not open video stream:把分辨率调低一档;- Windows 下画面发虚:在程序属性里把高 DPI 缩放改为"由应用程序执行"。
七、从这里开始动手
1. 安装与下载
Windows、macOS、Linux 用户直接从 Releases 下载预编译包,解压运行;Arch Linux 执行yay -Syu qtscrcpy。
2. 克隆源码本地编译
想研究或二次开发(项目基于 C++ + Qt + OpenGL + FFmpeg,Apache 2.0 协议),可以拉取源码:
git clone --recurse-submodules https://gitcode.com/GitHub_Trending/qt/QtScrcpy需要 Qt 5.12 以上版本,Windows 用 Qt Creator 打开CMakeLists.txt编译 Release,Linux 执行./ci/linux/build_for_linux.sh "Release",产物在output/x64/Release,细节见 开发文档。
3. 下一步建议
今天就可以做的三件事:USB 连上手机跑通第一帧;勾选仅后台录制录一段操作视频;把keymap/里的现成脚本应用到你的手游上。QtScrcpy 把投屏、键鼠控制、录制、传文件、群控收敛进一个免费工具里,装好即用,接下来怎么用,取决于你的手机要替你干多少活。
【免费下载链接】QtScrcpyAndroid real-time display control software项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考