使⽤Scrcpy在电脑显⽰⼿机画⾯并控制安卓设备
使⽤Scrcpy 显⽰⼿机画⾯并控制⼿机
背景
本⽂适⽤于安卓开发⼈员,不针对普通安卓⼿机⽤户。
在安卓开发调试中,有时候需要操作到设备。但有些设备的屏幕⼜⽐较特殊,例如缺少触摸屏,或者屏幕显⽰效果很奇怪。因此需要使⽤到⼀些关于投屏⼯具。
例如: Vysor。
可惜 Vysor Pro 收费较贵,免费版⼴告⼜多。⽽Scrcpy就是⼀个⽐较好的开源替代品。
特性:
屏幕画⾯投屏 + 控制软件
跨平台⽀持 Win、Mac、Linux
⽀持USB 数据线 (或WiFi) 连接电脑
Scrcpy
Scrcpy 可以视为开源免费版的 Vysor 替代品,可以将安卓⼿机的画⾯投屏到电脑桌⾯显⽰上并进⾏操控。
简单地说,就是可以让你在电脑上控制⼿机!它⽀持⿏标控制、键盘输⼊、电脑剪切板复制粘贴、拖放⽂件传输到⼿机、以及拖放 APK ⽂件进⾏安装。
Scrcpy 实际的投屏效果⾮常理想,画⾯清晰流畅,基本⽆明显延迟,相⽐ Vysor 要付费后才能设置⾼码率,Scrcpy 可以⾃定义视频码率这点显得⼗分良⼼。软件⽀持⾃动横屏,操作很灵敏,实⽤性⾮常的⾼。
你可以⽅便地利⽤ Scrcpy 来测试 APP 应⽤、玩游戏、⾼效完成⼀些需要在⼿机上进⾏的复杂⼯作、更⾼效地办公;也能更⽅便地进⾏Android 屏幕录像、截屏;甚⾄还能⽅便你上班时摸鱼划⽔。应⽤场景⾮常多,⽆论是开发者还是普通个⼈⽤户都相当的实⽤。
教程
Scrcpy 是⼀款命令⾏⼯具,没有图形界⾯,但这并不妨碍它成为⼀款出⾊好⽤的开源软件!其实它的使⽤也并不复杂。
GUI增强
作为⼀款如此出⾊实⽤的开源软件,却因为命令⾏的操作⽅式,使得它有不⼩的使⽤难度,让很多同学⽆法享受到它的便利,实在是遗憾。
为了解决命令⾏⽇常操作不便的问题,有热⼼的开发者实现了对应的GUI。
QtScrcpy :
Scrcpy-GUI :
建议使⽤ Scrcpy-GUI。
使⽤ Scrcpy 你⽆需 ROOT ⼿机,也不需在⼿机上安装 APP,只需在系统设置⾥启⽤“USB调试”( adb 调试) 即可。
连接电脑的⽅式可选 USB 数据线连接或 ADB ⽆线 WiFi 连接。
下⾯我们给⼤家提供⼀个 Scrcpy 的简单使⽤教程。
准备⼯作
1. 准备好 USB 数据线,安卓系统版本要求 5.0 以上
2. Scrcpy 需要使⽤ adb 驱动进⾏与电脑之间通讯,Windows 版的安装包⾥似乎已经包含了 adb。你也可以⼿动从进⾏安装。
3. 需要在⼿机端的系统设置⾥开启「开发者选项」及「USB 调试」选项。不同的⼿机开启⽅法不尽相同,不到选项的话可以⾃⾏去搜
索⼀下。
Windows 平台
Windows ⽤户直接下载并安装,连接好数据线后,电脑上执⾏ 即可启动软件。⾸次连接时,⼿机上会问你是否允许它对设备进⾏调试,按下确认同意即可。
macOS 平台
⽤户需要使⽤ HomeBrew 命令进⾏安装。其实 HomeBrew 的功能很实⽤,它可以帮助你⾮常简单地⼀键安装/卸载各种软件,包括Scrcpy。
1. 安装 homebrew:
通过命令⾏ (Terminal) 执⾏,如已安装可跳过
/usr/bin/ruby -e "$(curl -fsSL raw.githubusercontent/Homebrew/install/master/install)"
2. 安装 Scrcpy:
(如果⽹络太慢,可以考虑
更换 Homebrew 国内源
或使⽤代理)
brew install scrcpy
3. 安装 ADB:
如果你没有安装
ADB 命令⾏⼯具
,那么也可以⽤ brew 来安装
brew cask install android-platform-tools
4. 使⽤ USB 数据线连接⼿机后,执⾏scrcpy命令即可启动软件。⾸次连接会在⼿机上问你是否允许它对设备进⾏调试,按下确认同意即
可。
5. 如果你有多台⼿机连接到电脑,可以执⾏adb devices查看每⼀台设备对应的ID,然后执⾏scrcpy -s 设备ID来连接使⽤指定的设备。Linux 平台
Linux ⽤户可以⾃⼰编译安装。
sudo snap install scrcpy
Scrcpy 命令参数
这些参数可以多个⾃由组合使⽤,注意区分⼤⼩写。
Scrcpy 的命令参数
关闭⼿机屏幕scrcpy -S
限制画⾯分辨率scrcpy -m 1024 (⽐如限制为 1024)
修改视频码率scrcpy -b 4M (默认 8Mbps,改成 4Mbps)
裁剪画⾯scrcpy -c 1224:1440:0:0表⽰分辨率 1224x1440 并且偏移坐标为 (0,0)
多设备切换scrcpy -s 设备ID (使⽤adb devices命令查看设备ID)
窗⼝置顶scrcpy -T
显⽰触摸点击scrcpy -t在演⽰或录制教程时,可在画⾯上对应显⽰出点击动作
全屏显⽰scrcpy -f
⽂件传输默认路径scrcpy --push-target /你的/⽬录将⽂件拖放到 scrcpy 可以传输⽂件,此命令指定默认保存⽬录
只读模式(仅显⽰不控制)scrcpy -n
屏幕录像scrcpy -r 视频⽂件名.mp4或.mkv
屏幕录像 (禁⽤电脑显⽰)scrcpy -Nr ⽂件名.mkv
设置窗⼝标题scrcpy --window-title '异次元好棒!'
桌面无法显示同步传输声⾳可借助这个开源项⽬实现,但仅⽀持 Linux 系统
Scrcpy 快捷键
启动之后,你就可以在电脑桌⾯上看到 Scrcpy 的投屏窗⼝和⼿机画⾯了,你可以直接⽤⿏标进⾏操作,它同时也有很多键盘快捷键可以使⽤。
Scrcpy 快捷键列表
切换全屏模式Ctrl+F
将窗⼝调整为1:1(完美像素)Ctrl+G
Scrcpy 快捷键列表
调整窗⼝⼤⼩以删除⿊⾊边框Ctrl+X | 双击⿊⾊背景
设备HOME键Ctrl+H | ⿏标中键
设备BACK键Ctrl+B | ⿏标右键
设备任务管理键 (切换APP)Ctrl+S
设备菜单键Ctrl+M
设备⾳量+键Ctrl+↑
设备⾳量-键Ctrl+↓
设备电源键Ctrl+P
点亮⼿机屏幕⿏标右键
复制内容到设备Ctrl+V
启⽤/禁⽤ FPS 计数器(stdout)Ctrl+i
安装APK将 apk ⽂件拖⼊投屏
传输⽂件到设备将⽂件拖⼊投屏(⾮apk)
注:在 macOS 平台上,请使⽤cmd代替Ctrl。
屏幕录像
如有需要,你也可以通过命令对连接好的安卓⼿机进⾏录屏,并将视频保存为 .mp4 格式。
投屏并录屏:scrcpy -r file.mp4
不投屏只录屏:scrcpy -Nr file.mp4
scrcpy 录屏效果
使⽤ WIFi 连接
Scrcpy 使⽤ adb 与 Android 设备通讯,⽽ adb 本⾝是⽀持⽆线连接的。因此除了 USB 数据线之外,我们也能⽆线使⽤。前提是需要保证⼿机和电脑处于同⼀局域⽹ (连接到相同的 WiFi 路由器),步骤如下:
1. 查询设备当前的 IP 地址 (设置→关于⼿机→状态)
2. 启⽤ adb TCP/IP 连接,执⾏命令:adb tcpip 5555,其中 5555 为端⼝号
3. 拔掉你的数据线
4. 通过 WiFi 进⾏连接,执⾏命令:adb connect 设备IP地址:5555
5. 重新启动 scrcpy 即可
6. 如果 WiFi 较慢,可以调整码率:scrcpy -b 3M -m 800,意思是限制 3 Mbps,画⾯分辨率限制 800,数值可以随意调整。
7. 如需切换回 USB 模式,执⾏:adb usb
总结
个⼈感觉 Scrcpy ⽤来办公真的很⽅便,可以在电脑前轻松处理⼿机端的事情,对于没有电脑端的 App,或必须⽤⼿机来操作时,Scrcpy 真的能让你效率猛增!绝对是⼈⼿必备的利器。
再加上 Scrcpy 完全免费开源,⽀持跨平台,⽀持录屏,⽽且是独⽴的程序。