scrcpy简介(拼写是scrcpy,非Python爬虫框架Scrapy)

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

一些特性

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

此项目为开源项目,Github地址:
https://github.com/Genymobile/scrcpy

使用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运行环境,篇幅所限,此处不再赘述。
首先下载scrcpy,可去releases下载最新版本,目前最新版本为v1.10。下载地址:https://github.com/Genymobile/scrcpy/releases

解压后的目录:

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

使用USB进行连接

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

  1. 手机通过USB连接到PC上,首次连接会弹出是否信任该电脑,点击始终信任即可;
  2. 运行adb usb查看是否连接成功;

  1. 运行scrcpy即可

使用无线连接

可参考官方文档:Open Source Project - Scrcpy now works wirelessly
此连接方式更加方便快捷,若宽带速率高,使用效果更佳,使用方法也非常简单。

  1. 确保PC和手机在同一Wifi中;
  2. 手机先通过USB与PC相连;
  3. 在PC上运行 adb tcpip 服务端口,如端口为5555;

  1. 拔下你的设备,断开USB连接;
  2. 在PC上运行 adb connect 手机IP:服务端口(手机IP可通过手机的状态信息查看,或者登录路由器查看,一般以192.168开头);

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

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

若要切换回USB模式:adb usb

常用快捷键

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

Tips

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

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

这样我们就使用了两种方式(USB连接和Wifi连接)使用scrcpy。


版权声明:本文为CSDN博主「was172」的原创文章,遵循 CC 4.0 BY-SA 版权协议。

解放双手,在PC端进行Android真机调试的更多相关文章

  1. 在Mac系统上配置Android真机调试环境

    在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...

  2. Unity Profiler连接Android真机调试

    Profiler在Editor模式就可以观看性能消耗,但是毕竟电脑配置高,跟手机真机环境还是有区别.实际开发中的优化还是推荐用真机测试. 因为IOS一般比Android手机的配置高,在Android平 ...

  3. Android真机调试手动添加程序包的LogCat

    android真机调试有时候看LogCat 时,有时候那个跑的本程序的LogCat 没有出现而是 出现的是" All messages (no filters) " .此时 的Lo ...

  4. eros --- Windows Android真机调试

    1.下载并安装JDK 2.下载并安装Android Studio 上面两项不管用weex还是eros都是前置条件,度娘有大量教程. 开始eros 手脚架安装: $ npm i -g eros-cli ...

  5. Unity Frame Debugger连接Android真机调试

    当用Profiler分析到不是代码导致的性能问题,当前场景最大的性能瓶颈是渲染时,或者自己写的Shader要调试时,都可以用Frame Debugger进行调试. 按下列步骤设置打包,既可以用Prof ...

  6. Android真机调试试验

    之前一直使用模拟器,很不好用,今天使用真机调试试验. 准备材料:电脑,Android手机. 首先,就遇到了一个问题,我的手机是华为的,之前不知道怎么回事,打开调试总是自动关闭,而且切换总是切换不了,老 ...

  7. Android ——真机调试

    1. 设置android手机为USB调试模式.步骤: menu---> 设置 ---> 应用程序 ---> 开发 , 选择[USB调试] 2. 用USB连接手机和电脑,并确保成功.步 ...

  8. Android真机调试访问本地服务器(localhost)的解决方案

    Android系统把它自己作为了localhost!当连接localhost都是他自己啊.. 囧,在这里晕了好久才发现.. 网上介绍的都是模拟器连接本地服务器的,我试着把链接改为http://10.0 ...

  9. Android真机调试的时候logcat中无法输出调试信息的解决办法

    真机调试不输出日志到logcat的原因是手机厂商默认关闭了调试打印的功能,通过以下方法开启此方法. 下面以华为P6手机为例进行操作: 1.在拨号界面输入:*#*#2846579#*#* 进入测试菜单界 ...

随机推荐

  1. HTML CSS整理笔记

    ——修改placeholder提示的样式: 1.除IE外通用写法 类名或标签名::placeholder {color: red;}2.加兼容前缀写法 css超出一行显示省略号:给定宽度(width: ...

  2. 别再让你的微服务裸奔了,基于 Spring Session & Spring Security 微服务权限控制

    微服务架构 网关:路由用户请求到指定服务,转发前端 Cookie 中包含的 Session 信息: 用户服务:用户登录认证(Authentication),用户授权(Authority),用户管理(R ...

  3. vue 代码迁移的坑

    由于开发需要,开发过程中总会遇到由于代码调试.svn/git上传等过程中,总会出现代码迁移文件的需求,很多时候,迁移过后总会出现一些大大小小的问题, 首先,需要迁移文件内有没有系统自动隐藏的文件(例如 ...

  4. 你的 Java 并发程序 Bug,100% 是这几个原因造成的

    可见性问题 可见性是指一个线程对共享变量进行了修改,其他线程能够立马看到该共享变量更新后的值,这视乎是一个合情合理的要求,但是在多线程的情况下,可能就要让你失望了,由于每个 CPU 都有自己的缓存,每 ...

  5. 不想用锐捷怎么办?锐捷出问题|锐捷不能用怎么办?用menohust代替吧

    首先获取 MentoHUST(代替锐捷网络认证客户端) V4.1.0.2001 绿色免费版 解压到任意目录 用管理员身份 启动  安装&卸载 .bat(右键用管理员运行)  这个文件可能乱码了 ...

  6. JS设置和获取盒模型的宽和高

    JS设置和获取盒模型的宽和高 dom.style.width/height:只能取出内联样式的宽度和高度 dom.currentStyle.width/height:获取即时的计算的样式,但是只有IE ...

  7. CSAPP:代码优化【矩阵读写】

    转载请注明出处:https://www.cnblogs.com/ustca/p/11790314.html 写程序最主要的目标就是使它在所有可能的情况下都正确工作,另一方面,在很多情况下,让程序运行得 ...

  8. 使用MySQL,SQL_MODE有哪些坑,你知道么?

    SQL_MODE是MySQL中的一个系统变量(variable),可由多个MODE组成,每个MODE控制一种行为,如是否允许除数为0,日期中是否允许'0000-00-00'值. 为什么需要关注SQL_ ...

  9. leetcode系列---atoiFunction C#code

    Function: /// <summary> /// ToInt /// </summary> /// <param name="str">& ...

  10. abp(net core)+easyui+efcore实现仓储管理系统——EasyUI之货物管理七(二十五)

    abp(net core)+easyui+efcore实现仓储管理系统目录 abp(net core)+easyui+efcore实现仓储管理系统——ABP总体介绍(一) abp(net core)+ ...