很早之前,做过一个《WinCE远程桌面助手》,在没有屏幕或者在调试LCD驱动时,发挥了很大作用,平日开发也是必备。后来还被网友用于处理一些疑难问题,如无法输入开机密码时可通过该工具远程输入,触屏坏了也可远程操作。后来做Android开发,便有将该工具移植到Android上的打算。只是Android的权限问题比较麻烦,各个版本的适配和兼容也存在很大的问题,无法达到预期效果。后来陆续使用Total Control和Vysor,感觉Vysor已经够用,就放弃了自己搞的打算。

最近项目中有投屏的需求,于是又进一步研究了Vysor和minicap(STF)的原理。其中Vysor突破了Android的权限问题,具体参见《vysor原理以及Android同屏方案》。而minicap的兼容性和流畅度都非常不错,巧的是其基本框架与《WinCE远程桌面助手》非常相似。于是很方便地将《WinCE远程桌面助手》嫁接到minicap上,做了一个minicap助手,方便在Windows上使用minicap,效果还不错。但由于minicap在屏幕旋转时,需要重启,体验不是很好。另外,远程操作还依赖于minitouch,感觉也不爽,于是又萌发起做一个Android远程桌面助手的想法。虽然破解了Vysor,用着也挺顺手,但感觉还是不太好。另外也担心后续Vysor升级版本后,破解方法失效,不如自己搞一个方便,而且还可以扩展一些功能,便于Android开发和调试。

想到不如做到,于是基于minicap助手又进一步修改,成了Android远程桌面助手。在adb正常工作的情况下,直接运行ADRHOST.exe,它将自动检测Android设备,并安装apk,然后建立连接,并显示Android画面,具体过程如下所示。

Android软件开发最大的问题是版本兼容。目前只测试了几款手机,Nexus6P+Android O、Pixel XL+Android N、HuaweiP9+Android N,均可正常使用。

相比Vysor,Android远程桌面助手画面显示更清晰,灵活性更大,对屏幕旋转的处理更好,但兼容性及帧速都逊于Vysor,不过后面有时间可以慢慢优化。右侧窗口的空间还那么大,也需要时间来填满。目前而言,Android远程桌面助手的特性及功能如下:

依赖adb,无需root,画面显示清晰且可调,支持自动保存截图,支持Ctrl+C复制画面到剪贴板,画面显示可缩放可全屏,支持拖拽文件到/sdcard/Download目录,Ctrl+拖拽APK可直接安装apk,鼠标中键模拟Home键,鼠标右键模拟Power键,支持鼠标滚轮操作,支持键盘输入,Alt+D显示设备信息窗口,支持快速重启、进入fastboot及清除logcat。

Android远程桌面助手下载地址:http://files.cnblogs.com/files/we-hjb/ARDC%2820170702%29.rar

鸣谢:

koush/vysor.io        libjpeg-turbo   minicap(STF)

android屏幕共享及远程控制原理      vysor原理以及Android同屏方案

Android远程桌面助手的更多相关文章

  1. Android远程桌面助手(B1391)

    ARDC(B1391), Download:https://files.cnblogs.com/files/we-hjb/ARDC%28B1391%29_EN.7z Android远程桌面助手(B13 ...

  2. Android远程桌面助手(B1371)

    Android远程桌面助手(B1371),下载:https://files.cnblogs.com/files/we-hjb/ARDC%28B1371%29.7z 1.增加了对超大分辨率4320*21 ...

  3. Android远程桌面助手(B1332)之文件管理器

    Android远程桌面助手除了支持Android界面的显示及控制外,还支持Android文件系统的管理,包括文件的快速上传(push).下拉(pull)和查看(cat). Android远程桌面助手( ...

  4. Android远程桌面助手(B1309)

    修改了窗口缩放的处理,支持Android Car等非常规分辨率的Android设备: 修改了获取Android端软件版本的方法,优化了APK的升级逻辑: 优化了远程输入法功能,支持利用PC端输入法快速 ...

  5. Android远程桌面助手(B1185)for Android P开发者预览版

    Android P的开发者预览版已出,其中App compatibility changes部分特别强调“The platform restricts the use of some non-SDK ...

  6. Android远程桌面助手扩展之微信跳一跳辅助

    微信跳一跳的外挂辅助已是五花八门,万能的TB上也有了各种明码标价的代练.微信小程序游戏的火爆甚至带火了手游外挂产业.另一方面,跳一跳游戏也在不断更新,防止使用外挂刷高分.Android远程桌面助手支持 ...

  7. Android远程桌面助手之系统兼容篇

    Android远程桌面助手理论上兼容Android4.4至Android8.1之间所有的原生安卓系统,其他第三方ROM,如MIUI.Flyme.EMUI和Smartisan OS等也都陆续测试过,目前 ...

  8. Android远程桌面助手之性能监测篇

    <Android下获取FPS的几种方法>一文中提到了Gamebench工具,它不仅可以获取FPS,还可以获取CPU及内存占用率等系统状态信息.其局限性也非常明显,切换应用时需要重新选择监控 ...

  9. Android远程桌面助手(Build 0787)

    Android远程桌面助手(Build 0787) 新增: 增加了输入法的快速切换功能,支持通过Google拼音输入法在PC端快速输入中文: 增加了Broadcast的暂停和继续功能: 某些应用截屏失 ...

随机推荐

  1. Natas Wargame Level 19 Writeup(猜测令牌,会话劫持)

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAq4AAAEKCAYAAADTmtdjAAAABHNCSVQICAgIfAhkiAAAIABJREFUeF

  2. 写给Android App开发人员看的Android底层知识(2)

    (五)AMS 如果站在四大组件的角度来看,AMS就是Binder中的Server. AMS全称是ActivityManagerService,看字面意思是管理Activity的,但其实四大组件都归它管 ...

  3. SCAU Individual Contest #1

    总结一下就是自己太弱.每次打比赛遇到比较难题就喜欢瞎开题,结果都是每题想一下,然后就是结束了. A:题意让你用小写字母构造一个总共有K个的回文串,比如aba的话就是{a}{b}{a}{aba}四个,比 ...

  4. 一个Monad的不严谨介绍

    一个单子(Monad)说白了不过就是自函子范畴上的一个幺半群而已,这有什么难以理解的?* 之前了解了下Monad,后来一段时间没碰,最近研究Parser用到Monad时发现又不懂了.现在重新折腾,趁着 ...

  5. kafka 0.10.2 消息生产者

    package cn.xiaojf.kafka.producer; import org.apache.kafka.clients.producer.KafkaProducer; import org ...

  6. 多媒体开发库 之 SDL 详解

    SDL 简介 SDL(Simple DirectMedia Layer)是一套开放源代码的跨平台多媒体开发库,使用C语言写成.SDL提供了数种控制图像.声音.输出入的函数,让开发者只要用相同或是相似的 ...

  7. 使用CSS设置滚动条样式以及如何去掉滚动条的方法

    <STYLE> BODY { SCROLLBAR-FACE-COLOR: #f892cc; SCROLLBAR-HIGHLIGHT-COLOR: #f256c6; SCROLLBAR-SH ...

  8. hdu5803

    hdu5803 题意 给出四个整数 A B C D,问有多少个四元组 (a, b, c, d) 使 a + c > b + d 且 a + d >= b + c ,0 <= a &l ...

  9. JVM-6.即时编译器

    一.即时编译器 二.运行模式 三.基本原理 四.编译优化技术 五.Java与C/C++的编译器对比 六.参考       一.即时编译器 1.在部分虚拟机(如Hotspot.IBM J9)中,Java ...

  10. Javaweb---服务器Tomcat与Eclipse的关联

    1.与eclipse的关联 打开eclipse-->window-->preferences 在搜索框输入->server->进行搜索,选择-–>server and R ...