Code Monkey home page Code Monkey logo

scrcpy's Introduction

scrcpy_android

说明

起因是我给我的妈妈买了一个便宜的平板,给她看电视剧,后来她想在平板上玩斗地主,因为平板屏幕大,看牌清楚,但是平板性能太差,所以我萌生了平板远程控制手机的想法,后来我尝试了市面上的安卓远程控制软件,比如NewDesk、RustDesk、甲壳虫、Uncon等等,但是均不理想,主要有以下缺点:

  • 不支持音频传输
  • 操作步骤繁琐(对我妈妈来说)
  • 对旋转支持不太好(比如甲壳虫在旋转时容易黑屏)
  • 需要root,部分如uncon要求root,洋垃圾平板无法root
  • 对不同屏幕适配不好(平板和手机比例不同,如果强制全屏的话,会导致画面扁扁的,如果保持原比例,那么平板两侧会有很大的空余空间,浪费)
  • 延迟较高,使用公网传输的控制软件延迟都很大

所以我决定自己实现一个投屏控制软件,主要就是利用了开源项目Scrcpy(在此感谢这个伟大的项目)

本软件特色

  • 使用简单,打开软件后选择被控端即可
  • 得益于Scrcpy2.0集成了Sndcpy,支持了音频的传输(经测试游戏和音乐可以传输,通话不会流转)
  • 在连接之初会自动根据主控端分辨率修改被控端分辨率,最大化利用主控端屏幕
  • 良好的旋转支持
  • 自动检测被控端屏幕状态,熄屏后自动亮屏,主控端在连接成功后永不熄屏
  • 使用导航悬浮球提供导航,减少主被控端手势冲突
  • 超快启动
  • 较低的延迟

使用步骤

  1. 被控端打开无线ADB调试,端口为5555; 有root的用户可以在/data/adb/service.d/下新建adb.sh,并添加
sleep 5 && setprop service.adb.tcp.port 5555 && stop adbd && start adbd

然后,为adb.sh添加可执行权限就可以,之后手机将开机自动启动ADB无线调试。 无root的用户,可在有线连接ADB后,在电脑端输入以下命令:

adb tcpip 5555
  1. 被控端安装scrcpy_back,将该软件放至桌面左半部分,将通知栏磁贴放至通知栏左半部分(放在左边是因为避免修改分辨率后显示界面超出屏幕点击不到,放在左边可保证总能在屏幕内显示),点击scrcpy_back或长按磁贴,并允许永久调试,测试软件是否正常工作(软件会自动退出,不是崩溃,可以手动修改分辨率,测试软件是否正常工作)
  2. 被控端建议改为使用静态地址,可在手机上配置静态获取,也可以在路由器上配置静态分配
  3. 主控端安装scrcpy_android,打开软件进行悬浮窗授权,添加设备,被控端同意永久调试,开始投屏

使用说明

  • 全屏悬浮窗显示投屏后的界面,主控端导航键不在起作用(类似于专注模式),如需退出投屏需按主控端电源键熄屏,也可以点按主控端通知栏消息
  • 分辨率在退出后会自动恢复,如果非正常退出导致被控端未恢复,可使用scrcpy_back
  • 投屏后声音会自动流转至主控端,音量大小受控于主控端,不需要调整被控端(除非被控端静音)
  • 因主控端手势先于本软件识别触摸,若系统判定为手势导航,会导致本软件捕捉不到触摸,本软件提供了悬浮导航球,帮助用户控制被控端,悬浮球单击为返回、双击为桌面、长按为最近任务,悬浮球可拖动

未来?

本软件的出现是我写给我妈妈使用,目前已经满足需求,不会考虑大的更新,小bug会修复

  • 软件最低安卓6.0,应该不会降低最低版本,适配工作量大
  • 有线控制,没想法,我认为有线并不舒服,减少的那点延迟不明显,我妈妈现在手机放家里随便一个地方,平板拿起来点击投屏就行,出门才用手机,在家平板大屏幕才爽

演示

4.4MB大小,可能加载较慢,可直接前往此处查看

鼓励

如果您觉得我的软件对您有帮助,可以赏俺一个硬币,万分感谢!

scrcpy's People

Contributors

mingzhixian avatar xinpolaris avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.