【导语】:一款在 PC 端控制安卓设备的小工具。可在 PC 和安卓设备间互通剪贴板、用电脑键盘打字、传输文件、安装程序、截图、录屏等等功能。

简介

scrcpy 可以显示并控制通过 USB (或 TCP/IP) 连接的安卓设备,且不需要任何 root 权限,支持 GNU/Linux、Windows 和 macOS。

特性

  • 轻量 (原生,仅显示设备屏幕)
  • 性能 (30~60fps)
  • 质量 (分辨率可达 1920×1080 或更高)
  • 低延迟 (35~70ms)
  • 快速启动 (最快 1 秒内即可显示第一帧)
  • 无侵入性 (不会在设备上遗留任何程序)

系统要求

  • 安卓设备最低需要支持 Android 5.0。
  • 确保设备已开启 adb 调试。
  • 在某些设备上,还需要开启额外的选项以使用鼠标和键盘进行控制。

项目地址是:

https://github.com/Genymobile/scrcpy

安装

在 Debian (目前仅支持 testing 和 sid 分支) 和Ubuntu (20.04) 上安装:

apt install scrcpy

另外,开发者还提供以下类型安装包:

  • snap 包
  • 对 Fedora 提供 COPR 包
  • 对 Arch Linux 提供 AUR 包
  • 对 Gentoo 提供 Ebuild 包

在 Windows 上安装:

  • 官网提供压缩包下载,解压即可使用

  • 使用 Chocolatey 安装:

choco install scrcpy
choco install adb
  • 使用 Scoop 安装:
scoop install scrcpy
scoop install adb

在 macOS 上安装:

  • 使用 Homebrew 安装
brew install scrcpy

如果 PATH 路径内没有 adb ,则还需要:

brew install android-platform-tools
  • 使用 MacPorts 安装
sudo port install scrcpy

运行

连接安卓设备,然后执行:

scrcpy

工具支持命令行参数,查看参数列表:

scrcpy --help

使用效果如图所示:

具体功能介绍

连接

1.将设备和电脑连接至同一 Wi-Fi。

2.打开 设置 → 关于手机 → 状态信息,获取设备的 IP 地址,也可以执行以下的命令:

adb shell ip route | awk '{print $9}'

3.启用设备的网络 adb 功能

adb tcpip 5555

4.断开设备的 USB 连接。

5.连接设备:

adb connect DEVICE_IP:5555 #将 DEVICE_IP 替换为设备 IP)

6.正常运行 scrcpy。

多设备

  • 如果 adb devices 列出了多个设备,必须指定设备的序列号 :
scrcpy --serial 0123456789abcdef
scrcpy -s 0123456789abcdef # 简写
  • 如果设备通过 TCP/IP 连接:
scrcpy --serial 192.168.0.1:5555
scrcpy -s 192.168.0.1:5555 # 简写

可以同时启动多个 scrcpy 实例以同时显示多个设备的画面。

全屏

可以通过如下命令直接全屏启动 scrcpy:

scrcpy --fullscreen
scrcpy -f # 简写

复制粘贴

每次安卓的剪贴板变化时,其内容都会被自动同步到电脑的剪贴板上。所有的 Ctrl 快捷键都会被转发至设备。其中:

  • Ctrl+c 复制
  • Ctrl+x 剪切
  • Ctrl+v 粘贴

    开源前哨 日常分享热门、有趣和实用的开源项目。参与维护 10万+ Star 的开源技术资源库,包括:Python、Java、C/C++、Go、JS、CSS、Node.js、PHP、.NET 等。

5.1 万 Star!不用 root 就能连接控制安卓的开源工具的更多相关文章

  1. 人生第一个过万 Star 的 github 项目诞生

    写 Spring Boot 开源项目走入第三个年头,终于有一个开源项目要破万 Star 了,请各位读者大人批评指正. Spring Boot 文章 2016年,我开始学习 Spring Boot 的时 ...

  2. 一些对外的服务(例如lnmp)都不用root执行

    lnmp lamp等需要对外的服务,都不用root用户执行进程 缺点: 如果php程序使用root运行,万一你的程序有漏洞,被拿到了web shell,那么黑客将直接拥有root权限进入你的系统 对于 ...

  3. 看github上有18万star的第一开源项目如何教你学前端编程的

    作为 Github | star 第一开源项目,已经超过18万 star:比之前最火的bootstrap的10万star还要多出8w,freeCodeCamp 越来越受关注,建站两年时间不到已经近40 ...

  4. 4.2 万 Star!开发 Web 和移动端应用的全栈平台

    [导语]:Meteor 是一个用 JS 开发现代 Web 应用程序的平台.它是开源的,在 GitHub 上有 4.2 万 Star. Meteor 是什么? 官方文档是这样描述 Meteor 的:Me ...

  5. 全网Star最多(近20k)的Spring Boot开源教程 2019 年要继续更新了!

    从2016年1月开始写博客,默默地更新<Spring Boot系列教程>,从无人问津到千万访问,作为一个独立站点(http://blog.didispace.com),相信只有那些跟我一样 ...

  6. Linux centosVMware MySQL常用操作设置更改root密码、连接mysql、mysql常用命令

    一.设置更改root密码 启动mysql /usr/local/mysql/bin/mysql -uroot 更改环境变量PATH,增加mysql绝对路径 使mysql -uroot永久生效需要编辑, ...

  7. SecureCRT无法使用root账户远程连接ubuntu

    ========1.问题============ SecureCRT无法使用root账户远程连接ubuntu 用其他账户连接,正常 用root账户连接,不能连接 =========2.原因====== ...

  8. filezilla的root账户无法连接服务器解决办法

    lz一直都是用filezilla上传文件到vm虚拟机的,用的是ubuntu14.04的系统.最近自己重新搭了lamp去做thinkphp的学习,lz有两个账户,一个是kin,另外一个是root.大家都 ...

  9. 解决Centos7 下 root账号 远程连接FTP,vsftpd 提示 530 Login incorrect 问题

    原文:解决Centos7 下 root账号 远程连接FTP,vsftpd 提示 530 Login incorrect 问题 三步走: 1.vim /etc/vsftpd/user_list 注释掉 ...

随机推荐

  1. nano 按Ctrl+X 输入Y 回车

    如何退出nano 1.nano 按Ctrl+X 如果你修改了文件,下面会询问你是否需要保存修改. 2.输入Y确认保存,输入N不保存,按Ctrl+C取消返回.如果输入了Y,下一步会让你输入想要保存的文件 ...

  2. 使用 yum-cron 自动更新 Linux系统

    使用 yum-cron 自动更新 Linux系统   Linux系统技术交流QQ群(1675603)验证问题答案:刘遄 我知道如何使用 yum 命令行 更新系统,但是我想用 cron 任务自动更新软件 ...

  3. 070.Python聚焦爬虫数据解析

    一 聚焦爬虫数据解析 1.1 基本介绍 聚焦爬虫的编码流程 指定url 基于requests模块发起请求 获取响应对象中的数据 数据解析 进行持久化存储 如何实现数据解析 三种数据解析方式 正则表达式 ...

  4. linux基础之进阶命令二

    本节内容 基础命令二: 1.      alias:查看和设置别名(alias:别名) alias 'ren=ls -ld' \ren 可不取消别名,执行ren原本的命令 2.      unalia ...

  5. VMWare虚拟机显示模块“Disk”启动失败

    找到启动虚拟机的目录: 在此路径中找到.vmx文件,在文件中查找(Ctrl+F快速查找)vmci0.present,此时会看到"vmci0.present = "TRUE" ...

  6. IDEA 最实用快捷键【MAC版本】

    目录 option + F7 Ctrl + B / Ctrl +鼠标左键(一键两用,可以无限循环的跳过来跳过去,我跳过去了,我又跳回去了) command + E (这个快捷键很有用,为什么我老是用不 ...

  7. 微服务架构(Microservices) ——Martin Flower

    不知不觉到达了Sring Boot的学习中了,在学习之前,了解微服务架构是很有必要的,对于自己提升今后面试的软实力有很大帮助,在此写下. 让我们接下来看下Martin Flower 如何解释微服务架构 ...

  8. [leetcode] (周赛)869. 重新排序得到 2 的幂

    869. 重新排序得到 2 的幂 枚举排列,然后验证.比较暴力. 其实好一点的做法应该反过来,先把int范围下的2的N幂算出来,然后一个一个验证给出的数能不能拼成. class Solution { ...

  9. Docker学习(2) 安装

    1 在Ubanru中安装 简单安装: 2 windows安装docker 3 OS X 安装docker

  10. Python+Selenium学习笔记8 - 多表单&多窗口切换

    1.多表单切换 下图为待测页面:内嵌百度首页 切换到百度首页进行操作 1 # coding = utf-8 2 3 from selenium import webdriver 4 import os ...