scrcpy---Android投屏神器(使用教程)

scrcpy——Android 投屏神器 (使用教程)

 发表于 2019-08-18   分类于 实用工具   Valine: 4

scrcpy 简介

注意:拼写是 scrcpy,非 Python 爬虫框架 Scrapy。

简单地来说,scrcpy 就是通过 adb 调试的方式来将手机屏幕投到电脑上,并可以通过电脑控制您的 Android 设备。它可以通过 USB 连接,也可以通过 Wifi 连接(类似于隔空投屏),而且不需要任何 root 权限,不需要在手机里安装任何程序。scrcpy 同时适用于 GNU / Linux,Windows 和 macOS。

它的一些特性:

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

此项目为开源项目,Github 地址:Genymobile/scrcpy: Display and control your Android device

使用 scrcpy 的要求

  1. Android 设备至少需要 API 21(Android 5.0 以上版本);
  2. 确保在您的设备上启用了 adb 调试 ;
  3. 在某些设备上,您还需要启用其他选项以使用键盘和鼠标控制它。

adb 调试的开启一般是多次点击手机系统版本,如我用的是 MIUI10,开启方法是 “设置”->” 我的设备”->” 全部参数”-> 点击 7 下 MIUI 版本,开启 “开发者选项”。然后在 “设置”->” 更多设置”->” 开发者选项” 中同时开启 USB调试 和 USB调试(安全设置)

注意:USB调试(安全设置) 必须开启,否则不可以使用电脑控制手机,即上述要求的第三条。

使用电脑连接手机

在 Android 手机中打开了 USB 调试后,我们即可在电脑中使用 adb 进行调试。

我使用的是 Windows10 系统,以下以 Windows 为例,MacOS 或 Linux 请点击这里

程序使用了 Java 语言,我们需要在电脑中搭建 Java 运行环境,参考:Windows10 配置 Java 开发环境

首先下载 scrcpy,可去 releases 下载最新版本,目前最新版本为 2020-04-30 的 v1.13

下载地址:https://github.com/Genymobile/scrcpy/releases
往下拉到 Assets:

下载 64 位版本

解压后的目录:

解压文件

打开 cmd 定位到此目录(在地址栏中输入 cmd 回车),或者将该目录如 D:\Github_Run\scrcpy-win64-v1.10 加入到系统环境变量中,程序的使用都在 cmd 命令行中操作。

使用 USB 进行连接

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

  1. 手机通过 USB 连接到 PC 上,首次连接会弹出是否信任该电脑,点击始终信任即可。
  2. 运行 adb usb 查看是否连接成功
1
2
D:\Github_Run\scrcpy-win64-v1.10>adb usb
restarting in USB mode

复制

  1. 运行 scrcpy 即可。

使用无线连接

可参考官方文档:Open Source Project - Scrcpy now works wirelessly

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

  1. 确保 PC 和手机在同一 Wifi 中
  2. 手机先通过 USB 与 PC 相连
  3. 在 PC 上运行 adb tcpip 服务端口,如端口为 5555
    1
    2
    
    D:\Github_Run\scrcpy-win64-v1.10>adb tcpip 5555
    restarting in TCP mode port: 5555
    

    复制

  4. 拔下你的设备,断开 USB 连接
  5. 在 PC 上运行 adb connect 手机 IP: 服务端口(手机 IP 可通过手机的状态信息查看,或者登录路由器查看,一般以 192.168 开头)
    1
    2
    
    D:\Github_Run\scrcpy-win64-v1.10>adb connect 192.168.0.4:5555
    connected to 192.168.0.4:5555
    

    复制

  6. 运行 scrcpy,在 cmd 中输入 scrcpy.exe

这样弹出手机的屏幕,手机投屏成功!正如预期的那样,性能与 USB 不同,默认的 scrcpy 比特率是 8Mbps,这对于 Wi-Fi 连接来说可能太多了。根据使用情况,降低比特率和分辨率可能是一个很好的折中方案。

1
2
3
scrcpy --bit-rate 2M --max-size 800
# 或者简写
scrcpy -b2M -m800

复制

若要切换回 USB 模式:adb usb

常用快捷键(重要)

描述快捷键
切换全屏模式Ctrl+f
点击手机电源Ctrl+p
返回Ctrl+b
返回到 HOMECtrl+h
多任务Ctrl+s
更多操作长按鼠标左键
显示最佳窗口Ctrl+g
调节音量Ctrl + 上下键
关闭设备屏幕(保持镜像)Ctrl+o
将设备剪贴板复制到计算机Ctrl+c
将计算机剪贴板粘贴到设备Ctrl+v

Tips:查看已连接设备命令 adb devices,显示 device 则表示已连接,显示 offline 则离线:

1
2
3
D:\Github_Run\scrcpy-win64-v1.10>adb devices
List of devices attached
192.168.0.4:5555        device

复制

使用命令行选项在启动时镜像时可以关闭设备屏幕,这一点也挺实用:

1
2
scrcpy --turn-screen-off
scrcpy -S

复制

这样我们就使用了两种方式(USB 连接和 Wifi 连接)使用 scrcpy,其它方法详见:README 如可直接拖拽 APK 进行安装,手机录屏等。

参考:使用 scrcpy 控制你的手机 - 暗无天日
Open Source Project - Scrcpy now works wirelessly

 scrcpy  手机投屏

 最新 Chrome 可用:请停用以开发者模式运行的扩展程序

一键解锁网易云音乐灰色歌曲小工具 

提交

4 评论

Anonymous Safari 14.0 macOS 10.15.7

2021-01-09回复

Mac 下怎么连接手机啊 必须用转接头吗

druoye Chrome 84.0.4147.105 Windows 10.0

2020-08-07回复

oppo手机中的 开发者选项>调试 中没有 USB 调试(安全设置)这一选项

在有线模式运行 scrcpy.exe时,结果如下
INFO: scrcpy 1.14 https://github.com/Genymobile/scrcpy
D:\progam files\scrcpy\scrcpy-server: 1 file pushed, 0 skipped. 28.6 MB/s (33142 bytes in 0.001s)
[server] INFO: Device: OPPO PCAM00 (Android 10)
INFO: Created renderer: direct3d
INFO: Renderer: direct3d
INFO: Initial texture: 1080x2336
ERROR: SDL failed to get a vertex buffer for this Direct3D 9 rendering batch!
ERROR: Dropping back to a slower method.
ERROR: This might be a brief hiccup, but if performance is bad, this is probably why.
ERROR: This error will not be logged again for this renderer.
[server] ERROR: Exception on thread Thread[main,5,main]WARN: Device disconnected

java.lang.IllegalStateException
at android.media.MediaCodec.native_dequeueOutputBuffer(Native Method)
at android.media.MediaCodec.dequeueOutputBuffer(MediaCodec.java:2826)
at com.genymobile.scrcpy.ScreenEncoder.encode(ScreenEncoder.java:108)
at com.genymobile.scrcpy.ScreenEncoder.internalStreamScreen(ScreenEncoder.java:89)
at com.genymobile.scrcpy.ScreenEncoder.streamScreen(ScreenEncoder.java:55)
at com.genymobile.scrcpy.Server.scrcpy(Server.java:76)
at com.genymobile.scrcpy.Server.main(Server.java:225)
at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:338)
Press any key to continue…

  有啥办法吗,如果有回复真是太好了,xx

Anonymous Chrome 80.0.3987.122 Windows 10.0

2020-03-05回复

现在Github上有一款GUI版本了。

Link

Anonymous Chrome 80.0.3987.122 Windows 10.0

2020-03-05回复

@Anonymous , 请问作者的英文字体是怎么设置的,挺别致的呢

Anonymous Edge 18.18362 Windows 10.0

2020-03-01回复

请问手机没有usb调试(安全模式)导致电脑无法点击手机的投屏应该怎么解决呢?我的是oppo手机,vivo手机也有这个问题。@a452987549@126.com

Anonymous QQBrowser 10.5.3863.400 Windows 10.0

2020-03-03回复

@Anonymous , 设置 关于手机 快速点击5下手机内核版本 进入开发者选项 即可找到USB调试

Powered By Valine
v1.4.18

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值