QtScrcpy

QtScrcpy

跨平台Android设备实时镜像与控制软件

QtScrcpy是一款基于scrcpy项目的Android设备屏幕镜像和控制软件。它支持通过USB或网络连接Android设备,无需root权限。QtScrcpy具有轻量、高性能、低延迟等特点,支持Windows、macOS和Linux平台。软件提供实时显示、键鼠控制、录屏、截图、无线连接、多设备连接等功能,还支持自定义按键映射和群控。QtScrcpy使用Qt重新实现了用户界面,提高了跨平台兼容性和易用性。

QtScrcpyAndroid设备控制屏幕镜像无线连接跨平台Github开源项目

QtScrcpy

Open Collective 财务贡献者 Windows MacOS Ubuntu

许可证 发布

中文用户?点我查看中文介绍

QtScrcpy 支持通过 USB 或网络显示和控制 Android 设备。它不需要 root 权限。

它支持三大主要平台:GNU/Linux、Windows 和 macOS。

它专注于:

  • 轻量级(仅显示设备屏幕)
  • 性能(30~60 fps)
  • 质量(1920×1080 或更高)
  • 低延迟35~70ms
  • 快速启动(仅需约 1 秒即可显示第一帧)
  • 非侵入性(设备上不会安装任何东西)

win

mac

linux

按键映射

您可以根据需要编写脚本,将键盘和鼠标操作映射到手机的触摸和点击。这里是脚本编写规则。

默认提供了抖音和一些其他游戏的脚本。启用后,您可以用键盘和鼠标玩游戏。PUBG Mobile 的默认按键映射如下:

游戏

这里有一个玩 PUBG Mobile 的视频演示。

添加新的自定义映射文件的说明。

  • 编写自定义脚本并将其放入 keymap 目录
  • 点击 刷新脚本 显示它
  • 选择你的脚本
  • 连接手机,启动服务并点击 应用
  • ~ 键(按键映射脚本中的 SwitchKey)切换到自定义映射模式
  • 再次按 ~ 键切换回正常模式
  • (对于 PUBG Mobile 等游戏)如果你想用方向盘键移动车辆,需要将移动模式设置为 单摇杆模式

群控

你可以同时控制所有手机。

群控演示

致谢

QtScrcpy 基于 Genymobilescrcpy 项目。非常感谢!

QtScrcpy 与原始 scrcpy 的区别如下:

关键点scrcpyQtScrcpy
界面sdlqt
视频编码ffmpegffmpeg
视频渲染sdlopengl
跨平台自行实现由 Qt 提供
语言CC++
风格同步异步
按键映射无自定义按键映射支持自定义按键映射
构建meson+gradleqmake 或 CMake
  • 使用 Qt 可以很容易地自定义 GUI
  • 基于 Qt 的信号槽机制的异步编程提高了性能
  • 易于学习
  • 增加了多点触控支持

学习

如果你对它感兴趣并想学习它是如何工作的,但不知道如何入手,你可以选择购买我录制的视频课程。 它详细介绍了整个软件的开发架构和开发过程,帮助你从零开始开发 QtScrcpy。

课程介绍:https://blog.csdn.net/rankun1/article/details/87970523

你可以加入我的 QtScrcpy QQ 群,与志同道合的朋友交流想法。

QQ 群号:901736468

要求

Android API >= 21(Android 5.0)。

确保你在设备上启用了 ADB 调试

下载

Windows

为了简便起见,在 Windows 上,预构建的包含所有依赖项(包括 ADB)的压缩包可在 Releases 中获取:

  • [QtScrcpy][github-download]

或者您可以自行构建

Mac OS

为了简便起见,在 Mac OS 上,预构建的包含所有依赖项(包括 ADB)的压缩包可在 Releases 中获取:

  • [QtScrcpy][github-download]

或者您可以自行构建

Linux

对于 Arch Linux 用户,您可以使用 AUR 安装:yay -Syu qtscrcpy(可能过时;维护者:yochananmarqos

对于其他发行版的用户,您可以从 Releases 获取预构建的压缩包:

  • [QtScrcpy][github-download]

或者您可以在 GitHub Actions 中获取,在 dev 分支下载最新的构建产物。

或者您可以自行构建(不推荐,如果可以的话请从 Actions 获取)

运行

将您的 Android 设备连接到计算机,然后运行程序并点击 USB 连接WiFi 连接

无线连接步骤(确保手机和电脑在同一局域网内):

  1. 在 Android 设备的开发者选项中启用 USB 调试
  2. 通过 USB 将 Android 设备连接到计算机
  3. 点击更新设备,您将看到设备号已更新
  4. 点击获取设备 IP
  5. 点击启动 adbd
  6. 点击无线连接
  7. 再次点击更新设备,将发现另一个带有 IP 地址的设备。选择此设备。
  8. 点击启动服务

注意:在启动 adbd 后,无需继续保持 Android 设备通过 USB 连接。

界面按钮介绍:

  • 启动配置:启动服务前的功能参数设置

    您可以设置本地录制视频的比特率、分辨率、录制格式和视频保存路径。

    • 后台录制:启动服务后不显示 Android 设备屏幕。在后台进行录制。
    • 总是置顶:Android 设备的视频窗口将始终保持在顶部
    • 关闭屏幕:启动服务后自动关闭 Android 设备屏幕以节省电量
    • 反向连接:服务启动模式。如果遇到连接失败并提示 more than one device,可以取消勾选
  • 刷新设备:刷新当前连接的设备

  • 启动服务:连接到 Android 设备

  • 停止服务:断开与 Android 设备的连接

  • 停止所有服务:断开所有已连接的 Android 设备

  • 获取设备 IP:获取 Android 设备的 IP 地址并更新到"无线"区域,方便无线连接设置。

  • 启动 adbd:启动 Android 设备的 adbd 服务。在无线连接前必须启动它。

  • 无线连接:无线连接到 Android 设备

  • 无线断开:断开无线连接的 Android 设备

  • adb 命令:执行自定义 ADB 命令(目前不支持阻塞命令,如 shell)

主要功能

  • 实时显示 Android 设备屏幕

  • 实时鼠标和键盘控制 Android 设备

  • 屏幕录制

  • 截图为 png

  • 无线连接

  • 支持多设备连接

  • 全屏显示

  • 显示在顶部

  • 安装 apk:将 apk 拖放到视频窗口以安装

  • 传输文件:将文件拖放到视频窗口以发送文件到 Android 设备

  • 后台录制:仅录制,不显示界面

  • 复制粘贴

    可以在计算机和设备之间双向同步剪贴板:

    • Ctrl + c 将设备剪贴板复制到计算机剪贴板;
    • Ctrl + Shift + v 将计算机剪贴板复制到设备剪贴板;
    • Ctrl + v 将计算机剪贴板作为一系列文本事件 粘贴(非 ASCII 字符尚不支持)。
  • 群控

  • 将设备扬声器声音同步到计算机(基于 sndcpy,仅支持 Android 10+)

快捷键

操作快捷键 (Windows)快捷键 (macOS)
切换全屏模式Ctrl+fCmd+f
将窗口调整为 1:1(像素完美)Ctrl+gCmd+g
调整窗口大小以移除黑边Ctrl+w | 双击¹Cmd+w | 双击¹
点击 HOMECtrl+h | 中键点击Ctrl+h | 中键点击
点击 BACKCtrl+b | 右键点击²Cmd+b | 右键点击²
点击 APP_SWITCHCtrl+sCmd+s
点击 MENUCtrl+mCtrl+m
点击 VOLUME_UPCtrl+ (上)Cmd+ (上)
点击 VOLUME_DOWNCtrl+ (下)Cmd+ (下)
点击 POWERCtrl+pCmd+p
开机右键点击²右键点击²
关闭设备屏幕(保持镜像)Ctrl+oCmd+o
展开通知面板Ctrl+nCmd+n
收起通知面板Ctrl+Shift+nCmd+Shift+n
复制到剪贴板³Ctrl+cCmd+c
剪切到剪贴板³Ctrl+xCmd+x
同步剪贴板并粘贴³Ctrl+vCmd+v
注入计算机剪贴板文本Ctrl+Shift+vCmd+Shift+v
¹双击黑色边框可将其移除。

²右键点击可在屏幕关闭时开启屏幕,否则会执行返回操作。

³仅适用于 Android 7.0 及以上版本。

待办事项

待办事项

常见问题

常见问题

开发

开发

欢迎大家参与维护本项目并贡献代码,但请遵循以下要求:

  1. 请向 dev 分支而非 master 分支提交 PR
  2. 提交 PR 前请先 rebase 原项目
  3. 请遵循"小批量、多次数"的原则提交 PR(建议一个改动一个 PR)
  4. 请保持代码风格与现有风格一致

为什么开发 QtScrcpy?

以下是按重要性排序的几个原因。

  1. 在学习 Qt 的过程中,我需要一个实际项目来尝试。
  2. 我有一些音视频方面的背景技能,并且对此感兴趣。
  3. 我有一些 Android 开发技能。但已经很久没用了,想巩固一下。
  4. 我发现了 scrcpy,决定用新的技术栈(C++ + Qt + Opengl + FFmpeg)重新制作它。

构建

所有依赖都已提供,编译起来很简单。

QtScrcpy

非 Arch Linux 用户

  1. 使用官方 Qt 安装程序或第三方工具如 aqt 在目标平台上设置 Qt 开发环境。 需要 Qt 5.12 及以上版本。(Windows 上使用 MSVC 2019)
  2. 使用 git clone --recurse-submodules git@github.com:barry-ran/QtScrcpy.git 克隆项目
  3. 对于 Windows,用 QtCreator 打开 CMakeLists.txt 并编译 Release 版本
  4. 对于 Linux,直接运行 ./ci/linux/build_for_linux.sh "Release" 注意:编译后的文件位于 output/x64/Release

Arch Linux 用户

  1. 安装软件包: base-devel cmake qt5-base qt5-multimedia qt5-x11extras (推荐 qtcreator)
  2. 使用 git clone --recurse-submodules git@github.com:barry-ran/QtScrcpy.git 克隆项目
  3. 运行 ./ci/linux/build_for_linux.sh "Release"

Scrcpy-Server

  1. 在目标平台上搭建 Android 开发环境
  2. 用 Android Studio 打开项目根目录中的 server 项目
  3. 首次打开时,如果没有对应版本的 Gradle,会提示查找 Gradle,是否升级 Gradle 或创建。选择取消。取消后会提示选择现有 Gradle 的位置。也取消,它会自动下载。
  4. 编译 apk 后,将其重命名为 scrcpy-server 并替换 QtScrcpy/QtScrcpyCore/src/third_party/scrcpy-server。

许可证

由于基于 scrcpy,因此使用与 scrcpy 相同的许可证

Copyright (C) 2025 Rankun

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

关于作者

Barry CSDN

一个普通的程序员,主要从事 C++ 桌面客户端开发,毕业于山东一年多的钢铁仿真教育软件,后来转到上海从事安全、在线教育相关领域工作,熟悉音视频。对语音通话、直播教育、视频会议等音视频领域的相关解决方案有一定了解。也有 Android、Linux 服务器等各种开发经验。

贡献者

代码贡献者

这个项目的存在要感谢所有贡献代码的人。[贡献]。 <a href="https://github.com/barry-ran/QtScrcpy/graphs/contributors"><img src="https://yellow-cdn.veclightyear.com/835a84d5/ebf5f7a0-59d6-4cfd-975e-f8a52d96d9d9.svg?width=890&button=false" /></a>

财务贡献者

成为财务贡献者并帮助我们维持我们的社区。[贡献]

个人

<a href="https://opencollective.com/QtScrcpy"><img src="https://yellow-cdn.veclightyear.com/835a84d5/2ec3c3b0-013c-44b5-8154-b4a07fba4d9d.svg?width=890"></a>

组织

通过您的组织支持这个项目。您的徽标将出现在这里,并链接到您的网站。[贡献] <a href="https://opencollective.com/QtScrcpy/organization/0/website"><img src="https://yellow-cdn.veclightyear.com/835a84d5/c7eac38c-9eed-48fa-9a52-f418ad61c2a6.svg"></a> <a href="https://opencollective.com/QtScrcpy/organization/1/website"><img src="https://yellow-cdn.veclightyear.com/835a84d5/777195d0-9012-4142-b964-408125d7ecef.svg"></a> <a href="https://opencollective.com/QtScrcpy/organization/2/website"><img src="https://yellow-cdn.veclightyear.com/835a84d5/b58ac51e-aada-4866-807c-e75c346d4963.svg"></a> <a href="https://opencollective.com/QtScrcpy/organization/3/website"><img src="https://yellow-cdn.veclightyear.com/835a84d5/f1717e9c-8b9a-4151-a391-705833e78f15.svg"></a> <a href="https://opencollective.com/QtScrcpy/organization/4/website"><img src="https://yellow-cdn.veclightyear.com/835a84d5/7a5cdb1e-c709-4ec9-b5e7-b3fea5c466bd.svg"></a> <a href="https://opencollective.com/QtScrcpy/organization/5/website"><img src="https://yellow-cdn.veclightyear.com/835a84d5/3ddda9e2-3aab-40ce-9937-99251ba48cf3.svg"></a> <a href="https://opencollective.com/QtScrcpy/organization/6/website"><img src="https://yellow-cdn.veclightyear.com/835a84d5/21834fcc-6bd0-4f82-bcb4-b9f39e625d11.svg"></a> <a href="https://opencollective.com/QtScrcpy/organization/7/website"><img src="https://yellow-cdn.veclightyear.com/835a84d5/6bc90503-76ad-4a45-9dc8-84ad29777d31.svg"></a> <a href="https://opencollective.com/QtScrcpy/organization/8/website"><img src="https://yellow-cdn.veclightyear.com/835a84d5/40cc5f49-bd94-4e06-8242-578b53b6daff.svg"></a> <a href="https://opencollective.com/QtScrcpy/organization/9/website"><img src="https://yellow-cdn.veclightyear.com/835a84d5/c5db875f-da4b-48b8-95c2-e7ebb39dc9a4.svg"></a>

编辑推荐精选

Keevx

Keevx

AI数字人视频创作平台

Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企业培训与社媒宣传,让全球企业与个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。

即梦AI

即梦AI

一站式AI创作平台

提供 AI 驱动的图片、视频生成及数字人等功能,助力创意创作

扣子-AI办公

扣子-AI办公

AI办公助手,复杂任务高效处理

AI办公助手,复杂任务高效处理。办公效率低?扣子空间AI助手支持播客生成、PPT制作、网页开发及报告写作,覆盖科研、商业、舆情等领域的专家Agent 7x24小时响应,生活工作无缝切换,提升50%效率!

TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
蛙蛙写作

蛙蛙写作

AI小说写作助手,一站式润色、改写、扩写

蛙蛙写作—国内先进的AI写作平台,涵盖小说、学术、社交媒体等多场景。提供续写、改写、润色等功能,助力创作者高效优化写作流程。界面简洁,功能全面,适合各类写作者提升内容品质和工作效率。

AI辅助写作AI工具蛙蛙写作AI写作工具学术助手办公助手营销助手AI助手
问小白

问小白

全能AI智能助手,随时解答生活与工作的多样问题

问小白,由元石科技研发的AI智能助手,快速准确地解答各种生活和工作问题,包括但不限于搜索、规划和社交互动,帮助用户在日常生活中提高效率,轻松管理个人事务。

热门AI助手AI对话AI工具聊天机器人
Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

AI办公办公工具AI工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图热门
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

热门AI开发模型训练AI工具讯飞星火大模型智能问答内容创作多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

下拉加载更多