很早之前,做过一个《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. Opencv在linux下安装

    Opencv in Linux These steps have been tested for Ubuntu 10.04 but should work with other distros as ...

  2. Ubuntu怎样进行自由截图操作

    全屏截图 1. 很简单,键盘上右上角都有一个 Print Screen按键,敲一下,全屏截图操作完成. 自由截图 1. 此种方式很简单,打开系统设置->键盘,进入shortcuts选项 2. 点 ...

  3. 如何打一个FatJar(uber-jar)

    如何打一个FatJar(uber-jar) FatJar也就叫做UberJar,是一种可执行的Jar包(Executable Jar).FatJar和普通的jar不同在于它包含了依赖的jar包. 1. ...

  4. Linux Namespaces机制

    转自:http://www.cnblogs.com/lisperl/archive/2012/05/03/2480316.html Linux Namespaces机制提供一种资源隔离方案.PID,I ...

  5. kafka 0.10.2 消息消费者

    package cn.xiaojf.kafka.consumer; import org.apache.kafka.clients.consumer.ConsumerConfig; import or ...

  6. Vulkan Tutorial 05 逻辑设备与队列

    操作系统:Windows8.1 显卡:Nivida GTX965M 开发工具:Visual Studio 2017 Introduction 在选择要使用的物理设备之后,我们需要设置一个逻辑设备用于交 ...

  7. 一天搞定HTML----标签的嵌套规则06

    标签的嵌套规则 代码演示 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  8. 在ie下,a标签包被img的时候,为什么有个蓝色的边线

    效果像下图这样 那是由于<img>在ie下有默认边框,只要清除边框就可以了,在style中定义 img{ border:none } 显示效果就变成下面这样了 完!

  9. Java-集合框架总结

    集合框架: Java中的集合框架大类可分为Collection和Map:两者的区别: 1.Collection是单列集合:Map是双列集合 2.Collection中只有Set系列要求元素唯一:Map ...

  10. FPGA设计思想(持续更新)

    一. 流水线设计 将原本一个时钟周期完成的较大的组合逻辑通过合理的切割后分由多个时钟周期完成.该部分逻辑运行的时钟频率会有明显对的提升,提高系统的性能用面积换速度 一个流水线设计需要4个步骤完成一个数 ...