QtScrcpy可以通过USB(或通过TCP/IP)连接Android设备,并进行显示和控制。不需要root权限。单个应用程序最多支持16个安卓设备同时连接。

同时支持GNU/Linux,Windows和MacOS三大主流桌面平台



android adb显示屏幕 adb实时屏幕_android adb显示屏幕


android adb显示屏幕 adb实时屏幕_android获取apk名称_02


android adb显示屏幕 adb实时屏幕_Android_03


运行

在你的电脑上接入Android设备,然后运行程序,按顺序点击如下按钮即可连接到Android设备


android adb显示屏幕 adb实时屏幕_android获取apk名称_04


无线连接步骤(保证手机和电脑在同一个局域网):

  1. 安卓手机端在开发者选项中打开usb调试
  2. 通过usb连接安卓手机到电脑
  3. 点击刷新设备,会看到有设备号更新出来
  4. 点击获取设备ip
  5. 点击启动adbd
  6. 无线连接

备注:启动adbd以后不用再usb线了,以后连接断开都不再需要,除非安卓adbd停了需要重新启动

界面按钮介绍:

  • 启动配置:启动服务前的功能参数设置
  • 分别可以设置本地录制视频的比特率、分辨率、录制格式、录像保存路径等。
  • 仅后台录制:启动服务不现实界面,只是录制Android设备屏幕
  • 窗口置顶:Android设备视频窗口置顶显示
  • 自动息屏:启动服务以后,自动关闭Android设备屏幕节省电量
  • 使用reverse:服务启动模式,出现服务启动失败报错more than one device可以去掉这个勾选尝试连接
  • 刷新设备列表:刷新当前连接的设备
  • 启动服务:连接到Android设备
  • 停止服务:断开与Android设备的连接
  • 停止所有服务:断开所有已连接的Android设备
  • 获取设备ip:获取到Android设备的ip地址,更新到“无线”区域中,方便进行无线连接
  • 启动adbd:启动Android设备的adbd服务,无线连接之前,必须要启动。
  • 无线连接:使用无线方式连接Android设备
  • 无线断开:断开无线方式连接的Android设备
  • adb命令行:方便执行自定义adb命令(目前不支持阻塞命令,例如shell)

主要功能

  • 实时显示Android设备屏幕
  • 实时键鼠控制Android设备
  • 屏幕录制
  • 无线连接
  • 最多支持16台设备连接(PC性能允许的情况下可以增加,需要自己编译)
  • 全屏显示
  • 窗口置顶
  • 安装apk:拖拽apk到视频窗口即可安装
  • 传输文件:拖拽文件到视频窗口即可发送文件到Android设备
  • 后台录制:只录制,不显示界面

为什么开发QtScrcpy?

综合起来有以下几个原因,比重从大到小排列:

  1. 学习Qt的过程中需要一个项目实战一下
  2. 本身具有音视频相关技能,对音视频很感兴趣
  3. 本身具有Android开发技能,好久没用有点生疏,需要巩固一下
  4. 发现了scrcpy,决定用新的技术栈(C++ + Qt + Opengl + ffmpeg)复刻一下

如何编译

尽量提供了所有依赖资源,方便傻瓜式编译。

PC端

  1. 目标平台上搭建Qt开发环境(Qt 5.9.7+)
  2. 克隆该项目
  3. 使用QtCreator打开项目根目录all.pro
  4. 编译,运行即可

Android端 (没有修改需求的话直接使用自带的scrcpy-server.jar即可)

  1. 目标平台上搭建Android开发环境
  2. 使用Android Studio打开项目根目录中的server项目
  3. 编辑即可
  4. 编译出apk以后改名为scrcpy-server.jar并替换third_party/scrcpy-server.jar即可