欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Scrcpy用电脑控制Android手机(支持Windows/macOS/Linux)

程序员文章站 2022-05-03 12:07:25
一、scrcpy简介 注意:拼写是scrcpy,非Python爬虫框架Scrapy。 scrcpy可以通过adb调试的方式来将手机屏幕投到电脑上,并可以通过电脑控制您的Android设备。它可以通过USB连接(初次必须),也可以通过Wifi连接(通过TCP / IP,类似于隔空投屏),而且不需要任何 ......
Scrcpy用电脑控制Android手机(支持Windows/macOS/Linux)

一、scrcpy简介

注意:拼写是scrcpy,非python爬虫框架scrapy。

scrcpy可以通过adb调试的方式来将手机屏幕投到电脑上,并可以通过电脑控制您的android设备。它可以通过usb连接(初次必须),也可以通过wifi连接(通过tcp / ip,类似于隔空投屏),而且不需要任何root权限,不需要在手机里安装任何程序。scrcpy同时适用于gnu / linux,windows和macos。

它的一些特性:

  1. 亮度(原生,仅显示设备屏幕)
  2. 性能(30~60fps)
  3. 质量(1920×1080或以上)
  4. 低延迟(35~70ms)
  5. 启动时间短(显示第一张图像约1秒)
  6. 非侵入性(设备上没有安装任何东西)

scrcpy在github上的项目网址:https://github.com/genymobile/scrcpy | 客户端下载地址(https://github.com/genymobile/scrcpy/releases)。

genymobile是法国一家专注于安卓系统模拟与开发者服务的公司。大家熟知的genymotion就是它的一款产品。

二、使用scrcpy的要求

  1. android设备至少需要api 21(android 5.0以上版本)
  2. 确保在您的设备上启用了adb调试

在某些设备上,您还需要启用其他选项以使用键盘和鼠标控制它。

三、使用usb进行连接

此方式推荐使用,相对更加流畅。

手机通过usb连接到pc上,首次连接会弹出是否信任该电脑,点击始终信任即可。
运行adb usb查看是否连接成功,运行scrcpy即可。

d:\xushanxiang\scrcpy-win64-v1.10>adb usb
restarting in usb mode

你也可以将d:\xushanxiang\scrcpy-win64-v1.10加入到系统环境变量中。

如果有多个设备,需要指定序列号,序列号可以从adb devices获得,如:

adb devices
list of devices attached
* daemon not running; starting now at tcp:5037
* daemon started successfully

6a86de95 device

scrcpy -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/

此连接方式更加方便快捷,若宽带速率高,使用效果更佳,使用方法也非常简单,步骤如下:

  1. 确保pc和手机在同一wifi中
  2. 手机先通过usb与pc相连
  3. 在pc上运行 adb tcpip 服务端口,如端口为5555
  4. 拔下手机的usb连接
  5. 在pc上运行 adb connect 手机ip:服务端口
  6. 像往常一样运行 scrcpy相关命令
  7. 若要切换回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进行安装,手机录屏等。

原文: