解放双手,在PC端进行Android真机调试
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的要求
- Android设备至少需要API 21(Android 5.0以上版本);
- 确保在您的设备上启用了adb调试;
- 在某些设备上,您还需要启用其他选项以使用键盘和鼠标控制它。
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进行连接
此方式推荐使用,相对更加流畅。
- 手机通过USB连接到PC上,首次连接会弹出是否信任该电脑,点击始终信任即可;
- 运行adb usb查看是否连接成功;

- 运行scrcpy即可
使用无线连接
可参考官方文档:Open Source Project - Scrcpy now works wirelessly
此连接方式更加方便快捷,若宽带速率高,使用效果更佳,使用方法也非常简单。
- 确保PC和手机在同一Wifi中;
- 手机先通过USB与PC相连;
- 在PC上运行 adb tcpip 服务端口,如端口为5555;

- 拔下你的设备,断开USB连接;
- 在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真机调试的更多相关文章
- 在Mac系统上配置Android真机调试环境
在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...
- Unity Profiler连接Android真机调试
Profiler在Editor模式就可以观看性能消耗,但是毕竟电脑配置高,跟手机真机环境还是有区别.实际开发中的优化还是推荐用真机测试. 因为IOS一般比Android手机的配置高,在Android平 ...
- Android真机调试手动添加程序包的LogCat
android真机调试有时候看LogCat 时,有时候那个跑的本程序的LogCat 没有出现而是 出现的是" All messages (no filters) " .此时 的Lo ...
- eros --- Windows Android真机调试
1.下载并安装JDK 2.下载并安装Android Studio 上面两项不管用weex还是eros都是前置条件,度娘有大量教程. 开始eros 手脚架安装: $ npm i -g eros-cli ...
- Unity Frame Debugger连接Android真机调试
当用Profiler分析到不是代码导致的性能问题,当前场景最大的性能瓶颈是渲染时,或者自己写的Shader要调试时,都可以用Frame Debugger进行调试. 按下列步骤设置打包,既可以用Prof ...
- Android真机调试试验
之前一直使用模拟器,很不好用,今天使用真机调试试验. 准备材料:电脑,Android手机. 首先,就遇到了一个问题,我的手机是华为的,之前不知道怎么回事,打开调试总是自动关闭,而且切换总是切换不了,老 ...
- Android ——真机调试
1. 设置android手机为USB调试模式.步骤: menu---> 设置 ---> 应用程序 ---> 开发 , 选择[USB调试] 2. 用USB连接手机和电脑,并确保成功.步 ...
- Android真机调试访问本地服务器(localhost)的解决方案
Android系统把它自己作为了localhost!当连接localhost都是他自己啊.. 囧,在这里晕了好久才发现.. 网上介绍的都是模拟器连接本地服务器的,我试着把链接改为http://10.0 ...
- Android真机调试的时候logcat中无法输出调试信息的解决办法
真机调试不输出日志到logcat的原因是手机厂商默认关闭了调试打印的功能,通过以下方法开启此方法. 下面以华为P6手机为例进行操作: 1.在拨号界面输入:*#*#2846579#*#* 进入测试菜单界 ...
随机推荐
- python编程系列---可迭代对象,迭代器和生成器详解
一.三者在代码上的特征 1.有__iter__方法的对象就是可迭代类(对象) 2.有__iter__方法,__next()方法的对象就是迭代器3.生成器 == 函数+yield 生成器属于迭代器, 迭 ...
- 说说hashCode() 和 equals() 之间的关系?
上一篇关于介绍Object类下的几种方法时面试题时,提到equals()和hashCode()方法可能引出关于“hashCode() 和 equals() 之间的关系?”的面试题,本篇来解析一下这道基 ...
- Canonical 开源 MicroK8 | 云原生生态周报 Vol. 25
业界要闻 1.Canonical 开源 MicroK8 面向工作站和边缘/物联网的零运维 Kubernetes!MicroK8 是 Canonical 提供的一款功能强大的企业级 Kubernetes ...
- 一起来刷《剑指Offer》——不修改数组找出重复的数字(思路及Python实现)
数组中重复的数字 在上一篇博客中<剑指Offer>-- 题目一:找出数组中重复的数字(Python多种方法实现)中,其实能发现这类题目的关键就是一边遍历数组一边查满足条件的元素. 然后我们 ...
- [springboot 开发单体web shop] 1. 前言介绍和环境搭建
前言介绍和环境搭建 简述 springboot 本身是为了做服务化用的,我们为什么要反其道使用它来开发一份单体web应用呢? 在我们现实的开发工作中,还有大量的业务系统使用的是单体应用,特别是对于中小 ...
- spring boot项目启动报错
在eclipse中运行没有任何问题,项目挪到idea之后就报错 Unable to start EmbeddedWebApplicationContext due to miss EmbeddedSe ...
- Docker在Linux上 基本使用
简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任 ...
- Python3爬虫(3)_urllib.error
注:参照https://blog.csdn.net/c406495762/article/details/59488464 Learn_ERROR: urllib.error可以接收有urllib.r ...
- 投资自己【用Java写系统】
猿来如此:http://programmer.ischoolbar.com/
- 心脏滴血漏洞复现(CVE-2014-0160)
心脏滴血漏洞简述 2014年4月7日,OpenSSL发布安全公告,在OpenSSL1.0.1版本至OpenSSL1.0.1f Beta1版本中存在漏洞,该漏洞中文名称为心脏滴血,英文名称为HeartB ...