Android手机控制电脑撸出HelloWorld
2016-10-14 15:30
302 查看
最近在开发一个远程办公的软件。
昨天在手机调通,并且成功通过手机打开电脑上的Eclipse撸出来一个HelloWorld。
也许不久的将来, 下班后,拿着手机在家写代码了。工作时间直接变成24/24 /7
废话不多说,先来看下面的截图,图片都是手机截图
直接通过手机打开一个Windows操作系统。
下面打开Eclipse,创建了java工程。
1. 首先服务器开发一个虚拟桌面,类似阿里云的虚拟镜像一样,然后手机端进行交互。
2. 具体界面通过GLSerfaceView进行绘制。
3. 通过Spice协议传递交互数据
代码需要用到C语言函数库。这里armeabi和x86架构下都放置了这两个函数库,保证能够正常在模拟器和真机运行。
SDK下载地址:
http://docs.gstreamer.com/display/GstSDK/Installing+the+SDK
教程下载地址:
http://docs.gstreamer.com/display/GstSDK/Android+tutorial+1%3A+Link+against+GStreamer
代码中首先加载本地函数库,提供一个native方法.
程序一开始调用init方法。
关于具体通信主要参考开源项目flexVDI/launcher-mobile
https://github.com/flexVDI/launcher-mobile
函数库源码通过cerbero获取
https://github.com/EricssonResearch/cerbero
或者
https://github.com/flexVDI/cerbero
下面一大堆native方法,大部分都是和手势 / 输入内容交互的。(请忽略native方法红色警告)
更多精彩请关注微信公众账号likeDev
昨天在手机调通,并且成功通过手机打开电脑上的Eclipse撸出来一个HelloWorld。
也许不久的将来, 下班后,拿着手机在家写代码了。工作时间直接变成24/24 /7
废话不多说,先来看下面的截图,图片都是手机截图
直接通过手机打开一个Windows操作系统。
下面打开Eclipse,创建了java工程。
相关原理
本篇我们简单介绍下。有些低层代码还没有来得及仔细研究,写的有点水。1. 首先服务器开发一个虚拟桌面,类似阿里云的虚拟镜像一样,然后手机端进行交互。
2. 具体界面通过GLSerfaceView进行绘制。
3. 通过Spice协议传递交互数据
代码需要用到C语言函数库。这里armeabi和x86架构下都放置了这两个函数库,保证能够正常在模拟器和真机运行。
涉及到的开源框架
传输的流媒体框架使用GStreamerSDK下载地址:
http://docs.gstreamer.com/display/GstSDK/Installing+the+SDK
教程下载地址:
http://docs.gstreamer.com/display/GstSDK/Android+tutorial+1%3A+Link+against+GStreamer
代码中首先加载本地函数库,提供一个native方法.
package org.freedesktop.gstreamer; import android.content.Context; public class GStreamer { private static native void nativeInit(Context context) throws Exception; static { System.loadLibrary("gstreamer_android"); } public static void init(Context context) throws Exception { nativeInit(context); } }
程序一开始调用init方法。
@Override public void onCreate(Bundle icicle) { super.onCreate(icicle); mContext = this; try { GStreamer.init(mContext); } catch (Exception e) { Log.e(TAG, "Can't initialize GStreamer" + e.getMessage()); finish(); } //..... }
关于具体通信主要参考开源项目flexVDI/launcher-mobile
https://github.com/flexVDI/launcher-mobile
函数库源码通过cerbero获取
https://github.com/EricssonResearch/cerbero
或者
https://github.com/flexVDI/cerbero
下面一大堆native方法,大部分都是和手势 / 输入内容交互的。(请忽略native方法红色警告)
最后
代码还是比较多,没法一一列举,水了一篇。原谅我吧。以后有时间肯定会详细的分享出来。
更多精彩请关注微信公众账号likeDev
相关文章推荐
- Android手机控制电脑撸出HelloWorld
- Android手机控制电脑撸出HelloWorld
- 哇咔咔!用Android手机控制电脑。
- 电脑控制手机的另一选择 - android vnc server
- 用你的android手机控制你的电脑--unified reomte
- Teamviewer QuickSupport - 在电脑上远程连接控制手机/平板的软件神器 (Android/iOS)
- 电脑通过vnc控制android 手机
- android手机控制电脑源码
- android手机可视化远程控制电脑的设计
- 电脑控制手机的另一选择——android vnc server
- 电脑通过vnc控制android 手机
- 电脑通过vnc控制android 手机
- Total Control电脑控制Android手机
- android手机控制电脑源码
- Vysor让你在电脑上完全控制android手机屏幕镜像(译)
- 电脑远程登录控制Android手机-Webkey For Android使用教程
- [开源]Android手机控制电脑---项目背景介绍
- android手机控制电脑源码
- 电脑上控制Android手机录制屏幕
- Vysor 在电脑上控制android手机屏幕 镜像