三亩地 三亩地SAN MU DI · CODE DIARY
ARTICLE DETAIL

日记详情

真实记录编程学习的某一天,欢迎挑你感兴趣的翻一翻。

从零到一上手 scrcpy:把安卓手机屏幕投到电脑的免费神器

从零到一上手 scrcpy:把安卓手机屏幕投到电脑的免费神器

从零到一上手 scrcpy:把安卓手机屏幕投到电脑的免费神器

【免费下载链接】scrcpyDisplay and control your Android device项目地址: https://gitcode.com/GitHub_Trending/sc/scrcpy

你是不是也有过这样的尴尬:想给同事演示手机里的 APP,只能举着手机让大家围过来看;想录一段手游操作,手机自带录屏又卡又糊。其实这些问题有一个一劳永逸的解法——scrcpy,一个免费开源的安卓投屏工具。电脑端装上它,手机不用装任何 App,屏幕和声音就能实时镜像到电脑,还能用鼠标键盘反向操作。今天我们就从零到一,把这款 scrcpy 投屏神器彻底玩明白。

一句话认识它:它到底是什么工具

读作"screen copy"(屏幕复制),功能一句话就能说清:把安卓手机的屏幕实时投到电脑上,并允许你用电脑的键鼠反过来控制手机。投屏、控制、录制,一条命令全包。

给它画个速写,几个最能打的点先摆出来:

特性一句话说明
零侵入手机端零安装、无需 root,用完不留任何痕迹
全平台Windows / macOS / Linux 通吃
高画质低延迟1080P 起步、30~120fps、延迟仅 35~70ms,约 1 秒出画面
免费开源无广告、无账号、无内购,源码公开可自行编译
功能全家桶音视频同步、屏幕录制、无线连接、虚拟显示、摄像头镜像

开工前的两分钟准备

要求不多,就两件事:

  • 手机:Android 5.0 及以上(想同步听声音需要 Android 11+),在「设置 → 开发者选项」里打开USB 调试。找不到开发者选项的话,连续点击「关于手机 → 版本号」7 次即可解锁。
  • 电脑:装好 scrcpy 本体。三个平台各有各的姿势:
平台安装方式
Windows下载官方 release 压缩包,解压后直接双击 exe 运行
macOS一行命令:brew install scrcpy
Linux发行版软件源直接装,如sudo apt install scrcpy
想折腾源码git clone https://gitcode.com/GitHub_Trending/sc/scrcpy后按文档编译

四步走完上手全流程

第一步:USB 连线,跑通你的"Hello World"

把手机用数据线连上电脑,打开终端敲下最简单的命令:

scrcpy

这段代码做了什么:自动检测唯一连接的设备,直接开始镜像。手机屏幕上弹出的 USB 调试授权框,点「允许」,几秒钟后你就能在电脑窗口里看到手机画面了。

第二步:进阶操作,摆脱线缆自由投屏

不想被线拴着?scrcpy 的无线投屏只多一个参数。手机先 USB 连电脑,然后执行:

scrcpy --tcpip

这段代码做了什么:自动读取手机 IP、开启 adb 的 TCP/IP 模式并完成连接,之后拔掉数据线,画面依然流畅。以后手机和电脑在同一 Wi-Fi 下,还能直接指定地址连接:

scrcpy --tcpip=192.168.1.1

第三步:顺手把操作录成视频

做教程、剪视频、留存操作记录,它连录屏 App 都省了:

scrcpy --record=my_video.mp4

这段代码做了什么:镜像的同时把画面(含音频)直接编码成 MP4。想"只录不看"、默默在后台抓素材,再加一个--no-playback就行。

第四步:按需调画质,老手机也能丝滑

觉得卡?这不是 scrcpy 的锅,多半是手机解码扛不住。试试这组性能调优套餐:

scrcpy -m1024 --max-fps=30 --video-bit-rate=2M

这段代码做了什么:把画面最长边限制到 1024、帧率锁到 30、码率降到 2M——分辨率降低换来的是肉眼可见的流畅度提升,旧手机也能跑得飞起。

实战故事:我那台不服管教的小米手机

第一次在公司用 scrcpy 做演示,翻车翻得很彻底。连上小米手机运行 scrcpy,画面倒是出来了,可鼠标怎么点都没反应,终端还报错Injecting input events requires ... INJECT_EVENTS permission

查了文档才明白:小米等厂商在普通「USB 调试」之外,还藏了一个「USB 调试(安全设置)」选项,专门放行键鼠模拟注入权限,必须单独开启并重启手机才生效。当时我盯着那个报错看了十分钟,愣是没想到罪魁祸首在开发者选项的第二层菜单里。

另一个坑发生在无线连接时。我手动adb connect到手机一直超时,后来发现是手机连的 Wi-Fi 和我电脑不在同一网段——无线投屏的前提是两台设备同一局域网,跨网段连神仙都救不了。后来改用scrcpy --tcpip自动模式,它自己会处理好地址和端口,再也没有翻过车。

还有个小经验:如果同时插着两台手机,直接跑scrcpy会提示设备不唯一,这时用scrcpy -s 设备序列号指定目标即可,序列号用adb devices就能查到。

效率技巧速查:常用参数与快捷键一表收藏

高频参数

参数作用适用场景
-m1024限制画面最长边老手机、网络不佳
--max-fps=30锁帧率降低发热与卡顿
--video-bit-rate=2M调低码率无线投屏更稳
--record=file.mp4屏幕录制教程、复盘
--tcpip无线连接摆脱数据线
-s 序列号指定设备多设备管理
--no-audio关闭音频只想安静看画面

快捷键:scrcpy 的快捷键前缀MOD 默认是左 Alt 或 Windows 键(macOS 上是 Cmd),可以用--shortcut-mod=rctrl改成右 Ctrl。

操作快捷键
返回主屏幕MOD+h(或鼠标中键)
返回键MOD+b(或鼠标右键)
最近任务MOD+s
切换全屏MOD+f
熄屏继续镜像MOD+o
旋转手机屏幕MOD+r
一键安装 APK直接把 APK 拖进窗口

常见问题速查表

问题原因解决
运行 scrcpy 找不到设备未开启 USB 调试或未授权打开开发者选项里的 USB 调试,手机弹窗点允许,换「文件传输」模式
画面明显卡顿手机编码性能不足scrcpy -m1024 --max-fps=30 --video-bit-rate=2M
键鼠无法操作手机厂商隐藏了安全设置项开启「USB 调试(安全设置)」并重启手机
无线连接失败两台设备不在同一网段确认连接同一 Wi-Fi,改用scrcpy --tcpip自动模式
想静音镜像音频默认跟随画面传输--no-audio参数

想深入?这些文档和源码别错过

scrcpy 的文档写得相当认真,想精进可以按图索骥:

  • 连接与无线:doc/connection.md
  • 画质参数详解:doc/video.md
  • 音频与录制:doc/audio.md、doc/recording.md
  • 快捷键全表:doc/shortcuts.md
  • 摄像头镜像:doc/camera.md
  • 客户端源码:app/src/,服务端源码:server/src/main/
  • 疑难杂症:FAQ.md

现在就去试试

scrcpy 最迷人的地方,就是"一条命令解决所有事"的克制。它不装 App、不要账号、不看广告,安安静静地把投屏这件事做到极致。别犹豫了,现在就把手机连上电脑,打开终端敲下scrcpy——当你的手机画面在电脑屏幕上亮起来的那一刻,你会感谢自己做出了这个决定。

【免费下载链接】scrcpyDisplay and control your Android device项目地址: https://gitcode.com/GitHub_Trending/sc/scrcpy

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

← 返回列表