一、scrcpy简介
注意:拼写是scrcpy,非Python爬虫框架Scrapy。
scrcpy可以通过adb调试的方式来将手机屏幕投到电脑上,并可以通过电脑控制您的Android设备。它可以通过USB连接(初次必须),也可以通过Wifi连接(通过TCP / IP,类似于隔空投屏),而且不需要任何root权限,不需要在手机里安装任何程序。scrcpy同时适用于GNU / Linux,Windows和macOS。
它的一些特性:
- 亮度(原生,仅显示设备屏幕)
- 性能(30~60fps)
- 质量(1920×1080或以上)
- 低延迟(35~70ms)
- 启动时间短(显示第一张图像约1秒)
- 非侵入性(设备上没有安装任何东西)
Scrcpy在GitHub上的项目网址:https://github.com/Genymobile/scrcpy | 客户端下载地址(https://github.com/Genymobile/scrcpy/releases)。
Genymobile是法国一家专注于安卓系统模拟与开发者服务的公司。大家熟知的Genymotion就是它的一款产品。
二、使用scrcpy的要求
- Android设备至少需要API 21(Android 5.0以上版本)
- 确保在您的设备上启用了adb调试
在某些设备上,您还需要启用其他选项以使用键盘和鼠标控制它。
三、使用USB进行连接
此方式推荐使用,相对更加流畅。
手机通过USB连接到PC上,首次连接会弹出是否信任该电脑,点击始终信任即可。
运行adb usb
查看是否连接成功,运行scrcpy
即可。
D:xushanxiangscrcpy-win64-v1.10>adb usb
restarting in USB mode
你也可以将D:xushanxiangscrcpy-win64-v1.10加入到系统环境变量中。
如果有多个设备,需要指定序列号,序列号可以从adb devices获得,如:
adb devices
List of devices attached
* daemon not running; starting now at tcp:5037
* daemon started successfully
6a86de95 devicescrcpy -s 6a86de95
查看已连接设备命令adb devices,显示device则表示已连接,显示offline则离线。
如果是macOS,执行scrcpy
后,出现下面内容,并弹出手机当前实时界面(投屏),并且还可以在电脑界面上操作手机哟。
~ scrcpy
* daemon not running; starting now at tcp:5037
* daemon started successfully
/usr/local/Cellar/scrcpy/1.8/share/scrcpy/scrcpy-serv....jar: 1 file pushed. 1.0 MB/s (19850 bytes in 0.019s)
2019-11-28 10:31:45.315 scrcpy[4701:62681] INFO: Initial texture: 1080x1920
四、使用无线连接
可参考官方文档:Open Source Project – Scrcpy now works wirelessly
–https://www.genymotion.com/blog/open-source-project-scrcpy-now-works-wirelessly/
此连接方式更加方便快捷,若宽带速率高,使用效果更佳,使用方法也非常简单,步骤如下:
- 确保PC和手机在同一Wifi中
- 手机先通过USB与PC相连
- 在PC上运行
adb tcpip 服务端口
,如端口为5555 - 拔下手机的USB连接
- 在PC上运行
adb connect 手机IP:服务端口
- 像往常一样运行
scrcpy
相关命令 - 若要切换回USB模式:
adb usb
手机IP可通过手机的状态信息查看,或者登录路由器查看,一般以192.168开头。
这样弹出手机的屏幕,手机投屏成功!
正如预期的那样,性能与USB不同,默认的scrcpy比特率是8Mbps,这对于Wi-Fi连接来说可能太多了。
根据使用情况,降低比特率和分辨率可能是一个很好的折中方案。
scrcpy –bit-rate 2M –max-size 800
scrcpy -b2M -m800 # 简写
五、一些scrcpy命令
1、启动scrcpy
scrcpy
2、如果有多个设备,需要指定序列号,序列号可以从adb devices获得
scrcpy -s 6a86de95
3、设置端口
scrcpy -p 27184
4、查看帮助
scrcpy --help
5、设置码率(默认8M)
scrcpy -b 8M
6、限制投屏尺寸
scrcpy -m 1024
7、裁剪投屏屏幕(长:宽:偏移x:偏移y)
scrcpy -c 800:800:0:0
8、投屏并录屏
scrcpy -r file.mp4
9、不投屏只录屏
scrcpy -Nr file.mp4
10、手指触摸的时候显示轨迹球
scrcpy -t
11、显示版本信息
scrcpy -v
12、关闭设备屏幕
使用命令行选项启动镜像时,可以关闭设备屏幕:
scrcpy --turn-screen-off
scrcpy -S
或者随时按Ctrl + o
。要重新打开它,请按POWER键
(或Ctrl + p
)。
六、scrcpy常用快捷键
Action | Shortcut | Shortcut (macOS) |
---|---|---|
切换全屏模式 | Ctrl +f |
Cmd +f |
将窗口调整为1:1 (完美像素) | Ctrl +g |
Cmd +g |
调整窗口大小以删除黑色边框 | Ctrl +x | Double-click¹ |
Cmd +x | Double-click¹ |
返回到HOME | Ctrl +h | Middle-click |
Ctrl +h | Middle-click |
返回 | Ctrl +b | Right-click² |
Cmd +b | Right-click² |
Click on APP_SWITCH |
Ctrl +s |
Cmd +s |
点击菜单 | Ctrl +m |
Ctrl +m |
调节音量 | Ctrl +↑ (up) |
Cmd +↑ (up) |
调节音量 | Ctrl +↓ (down) |
Cmd +↓ (down) |
点击手机电源 | Ctrl +p |
Cmd +p |
Power on(打开) | Right-click² | Right-click² |
关闭设备屏幕(保持镜像) | Ctrl +o |
Cmd +o |
展开通知面板 | Ctrl +n |
Cmd +n |
折叠通知面板 | Ctrl +Shift +n |
Cmd +Shift +n |
将设备剪贴板复制到计算机 | Ctrl +c |
Cmd +c |
将计算机剪贴板粘贴到设备 | Ctrl +v |
Cmd +v |
将计算机剪贴板复制到设备 | Ctrl +Shift +v |
Cmd +Shift +v |
启用/禁用FPS计数器(在标准输出上) | Ctrl +i |
Cmd +i |
¹双击黑色边框将其删除。
²如果已关闭,请右键单击以打开屏幕,否则按BACK。
七、结语
这样,我们就使用了两种方式(USB连接和Wifi连接)使用scrcpy,其它方法详见:README(https://github.com/Genymobile/scrcpy#features),如可直接拖拽APK进行安装,手机录屏等。