在做Android应用开发的时候,经常需要将已经完成的应用展示给一同开发的小伙伴,然而一直感觉没有找到一种十分方便的办法。特别是看到了开发IOS的小伙伴在做展示的时候的方便。因为Apple既做PC,也做终端。自己的设备在互联互通方面就可以做得非常的好。在展示IOS应用方面,Apple的airplay协议就是一个十分方便的工具。airplay既可以和apple推出的apple TV进行通信,将手机或者PC的屏幕投影到显示器或者投影仪上,同时也可以用来将手机的屏幕投影到PC上。利用airplay将手机屏幕投影到PC上,再将PC通过VGA接口连显示器或者投影仪是展示手机应用的好方式。这样的话在PC上可以直接在需要介绍的PPT和手机屏幕之间进行快速切换。

然而在我的I9103手机中并没有内置类似airplay的功能,但是在Android阵营中确实是有和airplay相对应的协议miracast,miracast是由wifi alliance标准化的,不过看样子是需要硬件支持的。而另一个用于多屏共享的协议DLNA通常是内置在视频或者游戏等应用中,并不是用来将手机自身的屏幕投影到PC上的。既然标准的协议不能直接用,那就直接用软件来传吧,毕竟11n的速率理论上也能够上百兆,用于点对点之间的视频传输也应该是足够的了。软件实现多屏共享有mirrorOP和droid VNC,mirrorOP本身是收费软件,但是感觉mirrorOP的投影效果并不好。

droid VNC是昨天在浏览google play发现的,用上了之后感觉droid VNC的投影效果不错,并且它还能被用来在PC上控制手机。更重要的是这是一款免费的、开源的软件。https://play.google.com/store/apps/details?id=org.onaips.vnc   https://github.com/oNaiPs/droid-VNC-server

1.使用droid VNC的步骤

用过VNC进行PC上不同系统的远程访问的应该都清楚,VNC包括客户端(Viewer)和服务器端(Server)两部分。droid VNC是在Anroid手机上安装了VNC的server,只需要在PC上安装相应的vnc viewer就可以了。

具体的使用步骤可以见http://www.21kexin.com/jishu/201307308.html

2.构建快速的网络

   传输图像是十分耗带宽的应用,如果带宽过低,用vnc进行传输就会出现色值有偏差,手机操作不流畅等问题。目前我是用11n的ap(TP-Link TL-WR720N)和手机上的11n网卡直接进行传输的,配置如下图,在Win7下vnc viewer中可以看到显示的带宽值可以达到20000kbps,截图如下。此时在手机上进行划屏切换的时候仍然会看出图片帧的切换过程,但是对于应用的展示来说应该还是基本够用的。后续的考虑是

1.用随身WiFi替换目前的构造方式,简化搭建流程

2.看看usb tethering的功能能不能达到更高的带宽和在手机上11n开启channel bonding看能不能达到更大带宽。

用802.11n 加速,将android手机屏幕投影到win7电脑上的更多相关文章

  1. 通过 PC 远程控制 Android 的应用 -- 可以将手机屏幕投射显示到电脑上

    测试结果中的部分测试图:Mobizen手机界面: 电脑界面: 主界面 视频 全屏视频 WebKey手机界面: 电脑界面: AirMore手机界面: 电脑界面:主界面 镜像 全屏镜像 Airdroid手 ...

  2. 获取Android 手机屏幕宽度和高度以及获取Android手机序列号

    1.获取Android 手机屏幕宽度 1 DisplayMetrics dm = new DisplayMetrics(); 2 this.getWindowManager().getDefaultD ...

  3. Android 如何将手机屏幕投影到 PC 屏幕上或者投影仪上做演示?

    Android 如何将手机屏幕投影到 PC 屏幕上或者投影仪上做演示? 公司开发款APP,要给领导演示,总不能用手机面对面演示吧.所以找了好久,找到一款体验超好的: Total Control-帮助你 ...

  4. Unity3D Android手机屏幕分辨率问题

    Android手机屏幕分辨率五花八门,导致开发时不好把握,还好各个引擎对这个屏幕分辨率问题都有较好的处理方式:unity3D 也为我们提供了一个不错的解决方案. 在Unity3D 进行 android ...

  5. iPhone手机怎么投屏到电脑上

    如今生活水平不断上升,人们更加追求高质量.高享受的生活,所以可以利用一切资源提高生活质量,享受更好的生活体验,比如说手机投屏电脑就可以提高我们的视觉体验,所以更多的人去尝试,那么iPhone手机怎么投 ...

  6. Pyqt adb 获取Android手机屏幕

    adb的全称为Android Debug Bridge,就是起到调试桥的作用.adb的工作方式比较特殊,采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下adb会da ...

  7. Droid@screen:在PC屏幕上显示Android手机屏幕

    这里介绍一款工具——Droid@screen,用来获取手机屏幕,显示在PC屏幕上.它集截图.录像等多种功能于一体. 安装 1.    下载地址:http://droid-at-screen.org/d ...

  8. android 使用asm.jar将android手机屏幕投射到电脑

    使用asm.jar将Android手机到电脑屏幕投影 有时候可能须要将手机上的一些操作投影出来,比方一些App Demo的展示等.事实上,有专门的硬件设备能干这件事儿.但不是必需专门为展示个Demo去 ...

  9. 解决Android手机 屏幕横竖屏切换

    Android中当屏幕横竖屏切换时,Activity的生命周期是重新加载(说明当前的Activity给销毁了,但又重新执行加载),怎么使屏幕横竖屏切换时,当前的Activity不销毁呢? 1. 在An ...

随机推荐

  1. 无线安全审计工具 Fern WiFi Cracker

    使用这款工具前最好自定义一个MAC地址,以便隐藏我们的真实MAC地址信息. 由于Fern WiFi Cracker是图形界面的,不需要敲命令,所以操作起来比Aircrack-ng简单了许多. 首先选择 ...

  2. Revit如何模型导入到InfraWorks中

    Infraworks也就是以前的Autodesk Infrastructure Modeler(AIM)作为一款优秀的概念设计软件,能接收来自各种来源的数据,这篇介绍如何把revit中的建筑模型导入到 ...

  3. tomcat通过socket连接MySQL,不再占用服务端口【linux】

    MySQL连接方式的说明 http://icbm.iteye.com/blog/1840673 MySQL除了最常见的TCP连接方式外,还提供SOCKET(LINUX默认连接方式).PIPE和SHAR ...

  4. Hosting socket.io WebSocket apps in IIS using iisnode

    In this post I explain how to configure a socket.io node.js application to use of WebSockets when ho ...

  5. select count(*)和select count(1)

    一般情况下,Select Count (*)和Select Count(1)两着返回结果是一样的 假如表沒有主键(Primary key), 那么count(1)比count(*)快, 如果有主键的話 ...

  6. iOS从info.plist获取项目的名称及版本号

    NSString *executableFile = [[[NSBundle mainBundle] infoDictionary] objectForKey:(NSString *)kCFBundl ...

  7. 【代码笔记】iOS-使图片两边不拉伸,中间拉伸

    代码: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. // ...

  8. OC 中的block存储位置

    以下所有在ARC情况下: 一.block块的存储位置(block块入口地址):可能存放在2个地方:代码区.堆区(程序分5个区,还有常量区.全局区和栈区,对于MRC情况下代码还可能存在栈区.关于分区详细 ...

  9. 理解 Statement 和 PreparedStatement

    java,servlet中的PreparedStatement 接口继承了Statement,并与之在两方面有所不同:有人主张,在JDBC应用中,如果你已经是稍有水平开发者,你就应该始终以Prepar ...

  10. 代码合并工具——Beyond Compare

    由于公司现在人比较多,存在多个小组同时开发一个项目的情况.为避免不同小组之间代码的冲突,我们的SVN采用了打分支的情况. 这造成我们自己小组的内容上线后要合并到不同的分支和主干上去. 于是就找了这个合 ...