news 2026/9/7 19:53:28

QtScrcpy:手机投屏电脑免费搞定,键鼠直接操控还不用 root

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
QtScrcpy:手机投屏电脑免费搞定,键鼠直接操控还不用 root

QtScrcpy:手机投屏电脑免费搞定,键鼠直接操控还不用 root

【免费下载链接】QtScrcpyAndroid real-time display control software项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy

手机屏幕太小、调试演示要来回低头抬头?QtScrcpy 是一款免费开源的安卓投屏工具:把手机画面实时镜像到电脑,还能用键盘鼠标直接操控,无需 root,手机上也不装任何东西。

一分钟看懂原理:手机画面是怎么"搬"到电脑上的

整个投屏过程可以拆成两条通路:一条路上,手机把屏幕画面实时压缩成视频信号,持续"寄"给电脑;另一条路上,电脑把你的鼠标点击、键盘按键翻译成手机能理解的触摸事件,原路"寄"回去。两条路同时跑,手机就成了电脑的"第二块屏幕"。

两条通路之间的桥梁是 adb,它是安卓系统自带的调试通道。QtScrcpy 借助这条通道把一个小服务端推到手机上运行,因此不需要 root 手机,也不用在手机上安装任何第三方应用,也就是官方说的"非侵入性"。这对普通用户意味着零门槛:不用刷机、不用装 App,系统设置里开个开关就行。官方标称 30~60 fps(fps 即每秒画面帧数)、1080p 画质、启动后 1 秒内出第一帧、延迟约 35~70ms,日常滑动、打字基本感觉不到拖影。

准备工作:如何开启开发者模式并打开关键开关

先把手机用数据线连上电脑,然后在手机端逐项完成以下设置:

  1. "设置"→"关于手机",连续点击"版本号"7 次,直到系统提示已进入开发者模式。所有调试开关都藏在里面,必须先解开这一层。
  2. 进入"开发者选项",打开USB 调试:这是 adb 通道的入口,不开的话电脑完全识别不到手机。
  3. 打开USB 调试(安全设置)⚠️:它决定电脑能否模拟点击和滑动。不开会出现"有画面但点不动手机";小米系机型弹窗里还要允许"模拟点击"权限。
  4. 手机和电脑接入同一个 WiFi(无线投屏才需要,有线可跳过)。
  5. 建议在开发者选项里顺手打开"显示触摸指示点":每次点按都会标出位置,之后写映射脚本时用来确认坐标。

首次连上画面:USB 四步出画面,无线先借有线授权

  1. 数据线连接手机和电脑,手机端弹出"允许 USB 调试"时勾选"始终允许"并确认。
  2. 软件里点"刷新设备列表",左侧列表里出现一串设备号。
  3. 按需点进"启动配置"预设分辨率、比特率、窗口置顶等参数,第一次保持默认即可。
  4. 点"启动服务",新窗口弹出,手机画面已经在里面了。

无线投屏要建立在首次有线授权完成的基础上:手机保持连线和同一 WiFi,点"获取设备 IP",地址会自动填入无线区域;再点"启动 adbd",相当于帮手机打开网络调试通道;点"无线连接"并刷新设备列表,会多出一个以 IP 地址开头的设备,选中它、点"启动服务"即可。✅ adbd 启动成功后 USB 线就能拔掉,此后断连都不用再插线,只有 adbd 停止运行才需重新走一遍流程。如果多设备时报 "more than one device" 错误,把"启动配置"里的"使用 Reverse"去掉再试。对延迟敏感的游戏场景,建议还是保持有线。

画面出来之后:这些功能不用任何配置

  • 鼠标键盘直接操控:在窗口里点击、拖拽等同手指点按滑动,键盘敲字直接输入到手机;适合做方案演示、长文本录入。
  • 剪贴板双向同步Ctrl + C把手机剪贴板取到电脑,Ctrl + Shift + V把电脑剪贴板注入手机,Ctrl + V把文本逐字"敲"进手机;适合来回搬运账号、验证码。
  • 拖拽即传:APK 拖进窗口直接安装,其他文件发到手机 /sdcard/(路径可在配置里改);适合批量装应用、传素材。
  • 截图与录制:工具栏一键截图,"仅后台录制"可以不出投屏画面只录手机屏幕;适合做教程、比赛复盘。
  • 省电与显示开关:"窗口置顶"让画面始终压在最前,"自动息屏"关掉手机屏幕但投屏不中断;适合长时间演示和挂机录制。
  • 快捷键导航Ctrl + B回退、鼠标中键点主页、Ctrl + O熄灭手机屏幕保持投屏;适合频繁切窗口时免点屏操作。

完整快捷键对照表见 README_zh.md。另外它还提供把手机扬声器声音同步到电脑的功能(基于 sndcpy,需安卓 10 以上),官方提示目前用蓝牙替代更稳妥。

手游键鼠映射:像玩端游一样玩手机 FPS

这是它最值得深挖的能力。项目自带 keymap/ 目录,内置和平精英(gameforpeace.json)和抖音(tiktok.json)两套脚本。投屏成功后点"键鼠映射"、选中脚本加载,按~(Tab 左边那键)切入映射模式,再按一次切回普通控制。

映射生效后,WASD控制走位、移动鼠标转视角、空格跳跃、Q/E双击左右探头、=开自动奔跑、Shift车加速。映射文件就是一份 JSON,核心是 keyMapNodes 数组,每一项描述"哪个按键按在屏幕哪个位置":

{ "switchKey": "Key_QuoteLeft", // 切换键:按 ~ 在映射模式和普通控制之间切换 "keyMapNodes": [ { "comment": "方向盘", // 注释:说明这一项映射的用途 "type": "KMT_STEER_WHEEL", // 类型:方向盘,需 4 个键配合控制方向 "centerPos": { "x": 0.16, "y": 0.75 }, // 中心位置,x/y 是屏幕宽高比例 "leftKey": "Key_A", // 向左移动对应的按键 "rightKey": "Key_D", // 向右移动对应的按键 "upKey": "Key_W", // 向上移动对应的按键 "downKey": "Key_S" // 向下移动对应的按键 } ] }

只想换按键的话,改 key 名和 pos 值即可,存进 keymap/ 目录,软件里点"刷新脚本"重新加载,选中应用后再按~切换生效。坐标怎么找?在投屏窗口点一下屏幕,控制台会输出那一刻的 pos,直接抄过来用:

单点、双点、拖拽、方向盘等全部类型说明见 docs/KeyMapDes_zh.md。一个容易踩的坑:用和平精英方向盘控制载具时,记得把游戏里的载具设置改成单摇杆模式。

多设备投屏管理:几台手机同时连,分组统一操作

如果你以为投屏软件一次只能连一台手机,那是低估它了。QtScrcpy 支持同时连接多台设备,每台手机一个独立窗口,可以排满一屏;更进一步是"分组控制":把几台手机编进同一个组,对整组执行统一操作,比如批量安装同一个 APK、对每台依次执行相同按键序列。我试过用集线器一次接三台手机,三块画面各自独立弹出,同一套操作不需要逐台手动重复。凡是"同一动作要在多台测试机上反复做"的场景,这套多设备投屏管理都能省掉大量机械劳动。

出问题怎么办:常见故障的自查顺序

  • 有画面但鼠标点不动:按顺序查三处——"USB 调试(安全设置)"是否开启、厂商"模拟点击"权限是否允许、~键是否不小心切进了映射模式(再按一次~切回)。
  • 插线后刷不出设备号:先确认手机端"允许 USB 调试"是否已勾选;仍为空的话,先随便用一款手机助手连一次,再回来刷新设备列表。
  • 画面模糊:先把投屏窗口尺寸调到接近手机原生分辨率,放大缩小太多必然发虚;Windows 高 DPI 屏可右键 exe,在兼容性设置里把高 DPI 缩放行为改为"由应用程序执行"。
  • 打不开视频流 / 能控制但看不到画面:在 config/config.ini 里换解码方式,或先在"启动配置"里降低分辨率试试:
UseDesktopOpenGL=-1 # 解码方式:-1 自动,0 软解,1 DX 硬解,2 OpenGL 硬解 MaxFps=60 # 最大帧率,仅 Android 10 以上生效 RenderExpiredFrames=0 # 跳过过期视频帧,换取更低延迟
  • 提示 adb 版本冲突(adb server version doesn't match):任务管理器里找到 adb 进程结束掉再重试;电脑上装了多套 adb 的,在 config.ini 里用AdbPath指定要用的那一个。

另外一个小坑:手机端默认只能收英文字符,想输入中文就在手机上装搜狗或 QQ 输入法。更多细节见 docs/FAQ.md。

收尾:为什么值得试试这套工具

QtScrcpy 没有什么花哨卖点:免费开源、免 root、手机上不装任何软件,Windows、macOS、Linux 全平台可用。画面投出来、键鼠接上去、文件拖过去,这些基础能力它都一次给齐。下次手机屏幕成为你的瓶颈,接上线试一次,几分钟就能看到效果。想改源码的开发者可以git clone https://gitcode.com/GitHub_Trending/qt/QtScrcpy,官方在 Ubuntu 和 Arch Linux 上验证过编译流程。

💡 贴士:纯录制用途可以勾上"仅后台录制"加"自动息屏",电脑端录屏时不显示投屏窗口,手机屏幕也省一份电,录像保存路径在"启动配置"里一并设置。

【免费下载链接】QtScrcpyAndroid real-time display control software项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/7 19:52:22

栈的经典应用:括号匹配与区间合法性判断的全流程解析

前几天重新翻洛谷题单,又把 P8430 翻出来了。这题的标识很直白:【栈】P8430 [COI 2020] Zagrade,难度普及。Zagrade 在克罗地亚语里就是“括号”,COI 2020 的题目,名字一出来,基本等于告诉选手:…

作者头像 李华
网站建设 2026/9/7 19:51:57

LiveKit 免费自部署完整指南:从本地跑通到生产上线

LiveKit 免费自部署完整指南:从本地跑通到生产上线 【免费下载链接】livekit End-to-end realtime stack for connecting humans and AI 项目地址: https://gitcode.com/GitHub_Trending/li/livekit LiveKit 是一套开源的实时音视频通信方案,不收…

作者头像 李华
网站建设 2026/9/7 19:51:23

Anaconda误删急救指南:利用缓存与备份恢复conda环境

如果有一天你发现,/home/xxx/anaconda3 这个目录因为一条手滑的 rm -rf 命令不见了,或者 Windows 下 C 盘里整个 Anaconda 文件夹被“清理”掉,先别急着砸电脑。这种情况我在实际工作中见过不少次,有同事误删过整个环境&#xff0…

作者头像 李华
网站建设 2026/9/7 19:51:13

敏捷开发下,国产测试用例管理工具选型实战指南

做测试的朋友大概都经历过这种场面:迭代走到倒数第三天,测试组还在翻各自的Excel用例子表,发现上次改过的登录模块压根没更新;产品在群里问“这个需求到底覆盖了哪些场景”,没人接得住;开发提交的bug单里&a…

作者头像 李华