CN112511585A - 一种基于安卓系统远程桌面的输入重定向方法及系统 - Google Patents

一种基于安卓系统远程桌面的输入重定向方法及系统 Download PDF

Info

Publication number
CN112511585A
CN112511585A CN202011111388.4A CN202011111388A CN112511585A CN 112511585 A CN112511585 A CN 112511585A CN 202011111388 A CN202011111388 A CN 202011111388A CN 112511585 A CN112511585 A CN 112511585A
Authority
CN
China
Prior art keywords
module
data
input
server
android system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011111388.4A
Other languages
English (en)
Other versions
CN112511585B (zh
Inventor
张昀
刘步权
齐璇
刘晓敏
夏宇琦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kirin Software Co Ltd
Original Assignee
Kirin Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kirin Software Co Ltd filed Critical Kirin Software Co Ltd
Priority to CN202011111388.4A priority Critical patent/CN112511585B/zh
Publication of CN112511585A publication Critical patent/CN112511585A/zh
Application granted granted Critical
Publication of CN112511585B publication Critical patent/CN112511585B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/08Protocols specially adapted for terminal emulation, e.g. Telnet
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种基于安卓系统远程桌面的输入重定向方法及系统,系统分为两个部分,第一部分提供客户端到服务端的数据通信过程,包括数据通信模块、数据加解密模块、客户端输入信息获取模块、桌面音视频传输模块;第二部分提供输入重定向的具体方法和原理,核心是输入重定向模块。本发明实现了直接从源头重构输入数据到设备节点,通过直接重定向数据到Android设备节点,再由Android系统的IMS模块获取、处理及分发,从而实现输入数据的重定向,解决了远程桌面对于输入重定向的需求。

Description

一种基于安卓系统远程桌面的输入重定向方法及系统
技术领域
本专利申请属于计算机技术领域,更具体地说,是涉及一种将远端设备输入信息重定向到服务端Android系统的方法和系统。
背景技术
虚拟化技术蓬勃发展。依托虚拟化技术,科技人员可以为用户在云端提供一个android实例,作为远程桌面来使用,远程桌面除了继承真实手机的大部分功能以外,也拥有了应用运行在云端、高性能、数据存储安全等特性。
远程桌面的功能是:当某台计算机开启了远程桌面连接功能后我们就可以在网络的另一端控制这台计算机了,通过远程桌面功能我们可以实时的操作这台计算机,在上面安装软件,或者运行程序,所有的一切都好像是直接在该计算机上操作一样。这就是远程桌面的最大功能。
远程桌面通过Android(安卓)输入系统的Android输入事件实现,Android输入事件是源于/dev/input/下的设备节点,而Android(输入系统最终表现在WMS管理的某个窗口。最初输入事件是内核生成的原始事件,而最终交付给窗口的是KeyEvent或MotionEvent对象。因此Android输入系统的主要工作就是读取设备节点中的原始事件,通过加工封装后派发,然后各个层级的view对该事件进行处理,这个过程由InputManagerService系统服务(后面简称IMS)为核心的多个参与者共同完成。
现有基于Android系统的远程桌面,在实现上,更多是端到端的实现方式,即两边各运行一个客户端来实现远程通信和控制,这是基于java Api级的功能,由于该种远程桌面是应用到应用的重定向,所以存在效率低、并且完全依赖于Android应用的生命周期的问题,使用性受到限制。
依托虚拟化技术,可以为用户在云端提供一个android实例,作为远程桌面来使用,除了继承真实手机的大部分功能以外,也拥有了应用运行在云端、高性能、数据存储安全等特性。但作为一种虚拟手机系统,它无法获取客户端的输入模块的数据,用户无法操控和输入信息,由此产生了客户端输入数据重定向到服务端(服务器端)的Android系统的需求。
发明内容
本发明需要解决的技术问题是提供一种基于安卓系统远程桌面的输入重定向方法及系统,以满足远程桌面环境下的虚拟设备对于输入数据的需求。
为了解决上述问题,本发明所采用的技术方案是:
一种基于安卓系统远程桌面的输入重定向方法,依托虚拟化技术搭建服务端,利用容器技术在服务端内构建出远程桌面,然后利用安全远程通信协议将客户端的输入数据写入到服务端,由服务端通过容器技术,对输入数据进行重定向,再将输入数据写入远程桌面Android系统的设备节点,供Android系统直接获取使用。
本发明技术方案的进一步改进在于:虚拟化技术采用ARM虚拟化技术,服务端为arm服务器。
本发明技术方案的进一步改进在于:通过基于安卓系统远程桌面的输入重定向的系统来实现,该系统包括客户端、服务端、输入重定向模块,其中:
客户端包括输入信息获取模块、第一数据加解密模块、第一数据通信模块、第一桌面音视频传输模块,输入信息获取模块、第一数据加解密模块、第一数据通信模块依次双向信息连接;
服务端包括第二数据通信模块、第二数据加解密模块、第二桌面音视频传输模块,第二数据通信模块、第二数据加解密模块双向信息连接,第二数据通信模块与第一数据通信模块通过安全远程通信协议信息连接,第二数据加解密模块与第一数据加解密模块对应,第二桌面音视频传输模块与第一桌面音视频传输模块信息交互回显,第二数据加解密模块与输入重定向模块双向信息连接;
输入重定向模块也位于服务端内,输入重定向模块与服务端内的远程桌面双向信息连接、并通过Docker设备文件重定向,将数据写入到Android系统的设备节点中,供Android系统的IMS模块获取、处理及分发。
本发明技术方案的进一步改进在于:该方法的具体实现流程包括如下步骤:
S1、客户端输入信息获取模块获取输入信息交于第一数据加解密模块;
S2、第一数据加解密模块加密打包数据后,通过第一数据通信模块发送至服务端;
S3、服务端通过第二数据通信模块接收到加密数据后,首先使用第二数据加解密模块解密,然后解密过的数据传递到输入重定向模块;
S4、输入重定向模块将数据结构化后,通过Docker设备重定向,直接写入到Android系统的设备节点;
S5、服务端内的IMS模块根据窗口管理员WMS(Windows Manager Service)提供的窗口信息将事件交给合适的视觉窗口View,使对应的应用APP完成响应;
S6、第二桌面音视频传输模块将Android桌面音视频回显至客户端的第一桌面音视频传输模块,形成输入反馈。所谓回显,就是显示正在执行的批处理命令及执行的结果等。
本发明技术方案的进一步改进在于:S4中,输入重定向模块的具体实现过程为:
在服务端主程序启动的时候,首先在服务端的主机服务器中建立两个文件inputfile0和inputfile1;
之后,在启动容器内的远程桌面时,利用容器中的Docker命令在Docker镜像文件系统中建立两个设备文件/dev/input/event0和/dev/input/event1,作为容器内Android系统输入设备节点,并将这两个设备文件与inputfile0和inputfile1建立一对一的映射关系;
服务端主程序的第二数据通信模块接收到客户端发送过来的输入数据后,首先通过第二数据加解密模块对数据进行解密,之后对解密后的数据进行结构化处理,然后写入inputfile0和inputfile1中;
由于inputfile0和inputfile1这两个文件与容器内Android系统输入设备节点具有映射关系,因此数据可以直接被Android系统中的IMS模块获取并分发,从而传给Android系统的上层应用APP进行处理,至此完成输入数据的重定向操作。
一种基于安卓系统远程桌面的输入重定向的系统,用于实现上述的方法,包括客户端、服务端、输入重定向模块,其中:
客户端包括输入信息获取模块、第一数据加解密模块、第一数据通信模块、第一桌面音视频传输模块,输入信息获取模块、第一数据加解密模块、第一数据通信模块依次双向信息连接;
服务端包括第二数据通信模块、第二数据加解密模块、第二桌面音视频传输模块,第二数据通信模块、第二数据加解密模块双向信息连接,第二数据通信模块与第一数据通信模块通过安全远程通信协议信息连接,第二数据加解密模块与第一数据加解密模块对应,第二桌面音视频传输模块与第一桌面音视频传输模块信息交互回显,第二数据加解密模块与输入重定向模块双向信息连接;
输入重定向模块也位于服务端内,输入重定向模块与服务端内的远程桌面双向信息连接、并通过Docker设备文件重定向,将数据写入到Android系统的设备节点中,供Android系统的IMS模块获取、处理及分发。
本发明技术方案的进一步改进在于:输入重定向模块通过本地套接字与服务端的第二数据加解密模块进行交互。
由于采用了上述技术方案,本发明取得的有益效果是:
本发明中的输入重定向,是指不使用系统提供的标准输入端口,而进行重新的指定。本发明基于对Android输入系统的分析,提出一种基于桌面服务端输入重定向方法,通过直接重定向数据到Android设备节点,实现输入数据的重定向,以解决远程桌面对于输入重定向的需求。
本发明的方法,利用客户端数据加解密模块完成输入的数据加解密,通过客户端数据通信模块以及安全远程通信协议保证数据的安全性和完整性,将客户端的输入控制数据传输给服务端,服务端再通过数据通信模块和数据加解密模块接收输入数据并进行相应的解密操作,再经过输入重定向模块对数据进行格式化并通过Docker的设备文件重定向,将数据写入到Android系统的设备节点,供Android系统直接获取使用,Android系统及应用无需做任何修改。
本发明由于实现了直接从源头重构输入数据到设备节点,所以应用层APP、系统框架层的IMS模块不需要修改,即可直接获取重定向的输入数据。对于Android系统的使用者和开发者来说,这种输入数据重定向是无感知的,无需做任何代码更改。
本发明的系统结构简单,便于组装搭建,且各模块之间交互性好,系统运行平稳、流畅,具有极高的推广应用价值。
附图说明
图1为本发明方法的实现流程图;
图2为本发明系统的客户端的架构图;
图3为本发明系统的服务端的架构图。
具体实施方式
下面结合实施例对本发明做进一步详细说明。
本发明公开了一种基于安卓系统远程桌面的输入重定向方法,参见图1,依托虚拟化技术搭建服务端,利用容器技术在服务端内构建出远程桌面,然后利用安全远程通信协议将客户端的输入数据写入到服务端,由服务端通过容器技术,对输入数据进行重定向,再将输入数据写入远程桌面Android系统的设备节点,供Android系统直接获取使用。
该方法通过Docker容器技术、Android输入设备重定向技术、数据处理传输程序等相结合完成远程桌面输入数据的重定向,解决远程桌面环境下的虚拟设备无法获取输入数据的问题,实现了直接从源头重构输入数据到设备节点,所以应用层APP和系统框架层IMS模块不需要修改,即可直接获取重定向的输入数据。对于Android系统的使用者和开发者来说,这种输入数据重定向是无感知的,无需做任何代码更改,有效满足了在远程桌面环境下的虚拟设备对于输入数据的需求,
其中:虚拟化技术采用ARM虚拟化技术,服务端为arm服务器,当然可以选用其他的虚拟化技术以及相应的虚拟服务器,根据具体情况选用,在此不再赘述。
先解释一下Android系统,Android输入事件是源于/dev/input/下的设备节点,而输入系统最终表现在WMS管理的某个窗口。最初输入事件是内核生成的原始事件,而最终交付给窗口的是KeyEvent或MotionEvent对象。因此Android输入系统的主要工作就是读取设备节点中的原始事件,通过加工封装后派发,然后各个层级的view对该事件进行处理,这个过程由IMS模块系统服务(InputManagerService模块的简称)为核心的多个参与者共同完成。
本方法通过基于安卓系统远程桌面的输入重定向的系统来实现,参见图2-图3,该系统包括客户端、服务端、输入重定向模块,图2是基于Android系统远程桌面的输入重定向系统的客户端结构图,从图2可以看出,客户端包括输入信息获取模块、第一数据加解密模块、第一数据通信模块、第一桌面音视频传输模块,输入信息获取模块、第一数据加解密模块、第一数据通信模块依次双向信息连接。
图3是基于Android系统远程桌面的输入重定向系统的服务端结构图,从图3可以看出,服务端包括第二数据通信模块、第二数据加解密模块、第二桌面音视频传输模块,第二数据通信模块、第二数据加解密模块双向信息连接,再结合图2,第二数据通信模块与第一数据通信模块通过安全远程通信协议信息连接,第二数据加解密模块与第一数据加解密模块对应,第二桌面音视频传输模块与第一桌面音视频传输模块信息交互回显,第二数据加解密模块与输入重定向模块双向信息连接。
第一数据通信模块、第二数据通信模块主要用于客户端与服务端进行数据的发送及接收。
第一数据加解密模块、第二数据加解密模块用于客户端与服务端进行数据的加密及解密。
图3中的输入重定向模块也位于服务端内,输入重定向模块与服务端内的远程桌面双向信息连接、并通过Docker设备文件重定向,将数据写入到Android系统的设备节点中,供Android系统的IMS模块获取、处理及分发。
其中:服务端中远程桌面Android系统内设有系统框架层IMS模块、应用层引用APP,IMS模块也就是图3的InputManagerService模块,输入重定向模块与IMS模块双向信息连接、并将数据写入到Android系统的设备节点中。
参见图1,该方法具体实现流程包括如下步骤:
S1、客户端输入信息获取模块获取输入信息交于第一数据加解密模块;
S2、第一数据加解密模块加密打包数据后,通过第一数据通信模块发送至服务端;
S3、服务端通过第二数据通信模块接收到加密数据后,首先使用第二数据加解密模块解密,然后解密过的数据传递到输入重定向模块;
S4、输入重定向模块将数据结构化后,通过Docker设备重定向,直接写入到Android系统的设备节点;
S5、服务端内的IMS模块根据窗口管理员WMS(Windows Manager Service)提供的窗口信息将事件交给合适的视觉窗口View,使对应的应用APP完成响应;
S6、第二桌面音视频传输模块将Android桌面音视频回显至客户端的第一桌面音视频传输模块,形成输入反馈。
在此过程中,输入重定向模块的具体实现过程为:
在服务端主程序启动的时候,首先在服务端的主机服务器中建立两个文件,比如分别命名为inputfile0和inputfile1;
之后,在启动容器内的远程桌面时,利用容器中的Docker命令在Docker镜像文件系统中建立两个设备文件,比如/dev/input/event0和/dev/input/event1,/dev/input/event0和/dev/input/event1作为容器内Android系统输入设备节点,并将这两个设备文件与inputfile0和inputfile1建立一对一的映射关系;
服务端主程序的第二数据通信模块接收到客户端发送过来的输入数据后,首先通过第二数据加解密模块对数据进行解密,之后对解密后的数据进行结构化处理,然后写入inputfile0和inputfile1中;
由于inputfile0和inputfile1这两个文件与容器内Android系统输入设备节点具有映射关系,因此数据可以直接被Android系统中的IMS模块获取并分发,从而传给Android系统的上层应用APP进行处理,至此完成输入数据的重定向操作。
本发明还公开了一种基于安卓系统远程桌面的输入重定向的系统,用于实现上述的方法,包括客户端、服务端、输入重定向模块,其中:
见图2,客户端包括输入信息获取模块、第一数据加解密模块、第一数据通信模块、第一桌面音视频传输模块,输入信息获取模块、第一数据加解密模块、第一数据通信模块依次双向信息连接;
见图3,服务端包括第二数据通信模块、第二数据加解密模块、第二桌面音视频传输模块,第二数据通信模块、第二数据加解密模块双向信息连接,第二数据通信模块与第一数据通信模块通过安全远程通信协议信息连接,第二数据加解密模块与第一数据加解密模块对应,第二桌面音视频传输模块与第一桌面音视频传输模块信息交互回显,第二数据加解密模块与输入重定向模块双向信息连接。
输入重定向模块也位于服务端内,输入重定向模块与服务端内的远程桌面双向信息连接、并通过Docker设备文件重定向,将数据写入到Android系统的设备节点中,供Android系统的IMS模块获取、处理及分发。输入重定向模块通过本地套接字与服务端的第二数据加解密模块进行交互。
下面结合图1-图3,举例详细说明。
图2是基于Android系统远程桌面服务端输入重定向方法及系统的客户端结构图,其中客户端包括第一数据通信模块、第一数据加解密模块、输入信息获取模块以及第一桌面音视频传输模块。
客户端的输入信息获取模块利用移动设备系统API获取客户端的输入信息,再通过第一数据加解密模块和第一数据通信模块,采用安全远程通信协议上报到服务端上。此部分即图1中S1、S2步骤所示。
图3是基于Android系统远程桌面服务端输入重定向方法及系统的服务端结构图,其中包括:容器内Android系统应用层应用、容器内Android系统的IMS模块、第二数据通信模块、第二数据加解密模块、输入重定向模块以及第二桌面音视频传输模块,服务端数据流向是双向的,既有服务端命令下发,也有输入数据的获取。
其中IMS模块是一个Android系统服务,它分为Java层和Native层两部分。Java层这里暂不关注。Native层是InputReader和InputDispatcher两个输入系统关键组件的运行容器。
输入重定向模块主要功能是输入数据的重定向。客户端与服务端通信通道建立以后,客户端会通过第一数据通信模块和第一数据加解密模块上报输入信息,输入重定向模块接收到输入信息后通过Docker设备文件重定向,将数据写入到Android设备节点中,IMS模块的InputReader则不断地通过EventHub将原始事件取出来并翻译加工成Android输入事件,然后交给InputDispatcher。InputDispatcher再根据WMS提供的窗口信息将事件交给合适的View。最后窗口的ViewRootImpl对象再沿着控件树将事件派发给相关的View,由View对其收到的事件作出响应,更新画面、执行动作。即图1中S3、S4、S5步骤所示。
客户端的第一桌面音视频传输模块主要用来接收并显示Android远程桌面的音视频,服务端的第二桌面音视频传输模块则主要用来获取和发送Android 桌面音视频。这两个模块都是实时同步发送和接收Android远程桌面的新的数据。所以所有输入信息数据带来的Android桌面改变,都将通过第一桌面音视频传输模块和第二桌面音视频传输模块再反馈在客户端上。此部分即图1中S6所示。
本发明使用虚拟化技术,虚拟化是将单一物理设备模拟为相互隔离的多个虚拟设备,同时保证这些虚拟设备的高效性。arm是一种精简指令集(reduced instruction setcomputer,RISC)架构,精简(reduced)的意思是每条汇编指令独自完成所有的工作,而与之相对的复杂指令集则不是,它的一条汇编指令可能会翻译成好几条机器指令。
本发明使用容器技术Docker,Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

Claims (7)

1.一种基于安卓系统远程桌面的输入重定向方法,其特征在于:依托虚拟化技术搭建服务端,利用容器技术在服务端内构建出远程桌面,然后利用安全远程通信协议将客户端的输入数据写入到服务端,由服务端通过容器技术,对输入数据进行重定向,再将输入数据写入远程桌面Android系统的设备节点,供Android系统直接获取使用。
2.根据权利要求1所述的一种基于安卓系统远程桌面的输入重定向方法,其特征在于:虚拟化技术采用ARM虚拟化技术,服务端为arm服务器。
3.根据权利要求1所述的一种基于安卓系统远程桌面的输入重定向方法,其特征在于:通过基于安卓系统远程桌面的输入重定向的系统来实现,该系统包括客户端、服务端、输入重定向模块,其中:
客户端包括输入信息获取模块、第一数据加解密模块、第一数据通信模块、第一桌面音视频传输模块,输入信息获取模块、第一数据加解密模块、第一数据通信模块依次双向信息连接;
服务端包括第二数据通信模块、第二数据加解密模块、第二桌面音视频传输模块,第二数据通信模块、第二数据加解密模块双向信息连接,第二数据通信模块与第一数据通信模块通过安全远程通信协议信息连接,第二数据加解密模块与第一数据加解密模块对应,第二桌面音视频传输模块与第一桌面音视频传输模块信息交互回显,第二数据加解密模块与输入重定向模块双向信息连接;
输入重定向模块也位于服务端内,输入重定向模块与服务端内的远程桌面双向信息连接、并通过Docker设备文件重定向,将数据写入到Android系统的设备节点中,供Android系统的IMS模块获取、处理及分发。
4.根据权利要求3所述的一种基于安卓系统远程桌面的输入重定向方法,其特征在于:该方法具体实现流程包括如下步骤:
S1、客户端输入信息获取模块获取输入信息交于第一数据加解密模块;
S2、第一数据加解密模块加密打包数据后,通过第一数据通信模块发送至服务端;
S3、服务端通过第二数据通信模块接收到加密数据后,首先使用第二数据加解密模块解密,然后解密过的数据传递到输入重定向模块;
S4、输入重定向模块将数据结构化后,通过Docker设备重定向,直接写入到Android系统的设备节点;
S5、服务端内的IMS模块根据窗口管理员WMS提供的窗口信息将事件交给合适的视觉窗口View,使对应的应用APP完成响应;
S6、第二桌面音视频传输模块将Android桌面音视频回显至客户端的第一桌面音视频传输模块,形成输入反馈。
5.根据权利要求4所述的一种基于安卓系统远程桌面的输入重定向方法,其特征在于:S4中,输入重定向模块的具体实现过程为:
在服务端主程序启动的时候,首先在服务端的主机服务器中建立两个文件inputfile0和inputfile1;
之后,在启动容器内的远程桌面时,利用容器中的Docker命令在Docker镜像文件系统中建立两个设备文件/dev/input/event0和/dev/input/event1,作为容器内Android系统输入设备节点,并将这两个设备文件与inputfile0和inputfile1建立一对一的映射关系;
服务端主程序的第二数据通信模块接收到客户端发送过来的输入数据后,首先通过第二数据加解密模块对数据进行解密,之后对解密后的数据进行结构化处理,然后写入inputfile0和inputfile1中;
由于inputfile0和inputfile1这两个文件与容器内Android系统输入设备节点具有映射关系,因此数据可以直接被Android系统中的IMS模块获取并分发,从而传给Android系统的上层应用APP进行处理,至此完成输入数据的重定向操作。
6.一种基于安卓系统远程桌面的输入重定向的系统,用于实现权利要求1的方法,其特征在于:包括客户端、服务端、输入重定向模块,其中:
客户端包括输入信息获取模块、第一数据加解密模块、第一数据通信模块、第一桌面音视频传输模块,输入信息获取模块、第一数据加解密模块、第一数据通信模块依次双向信息连接;
服务端包括第二数据通信模块、第二数据加解密模块、第二桌面音视频传输模块,第二数据通信模块、第二数据加解密模块双向信息连接,第二数据通信模块与第一数据通信模块通过安全远程通信协议信息连接,第二数据加解密模块与第一数据加解密模块对应,第二桌面音视频传输模块与第一桌面音视频传输模块信息交互回显,第二数据加解密模块与输入重定向模块双向信息连接;
输入重定向模块也位于服务端内,输入重定向模块与服务端内的远程桌面双向信息连接、并通过Docker设备文件重定向,将数据写入到Android系统的设备节点中,供Android系统的IMS模块获取、处理及分发。
7.根据权利要求6所述的一种基于安卓系统远程桌面的输入重定向的系统,其特征在于:输入重定向模块通过本地套接字与服务端的第二数据加解密模块进行交互。
CN202011111388.4A 2020-10-16 2020-10-16 一种基于安卓系统远程桌面的输入重定向方法及系统 Active CN112511585B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011111388.4A CN112511585B (zh) 2020-10-16 2020-10-16 一种基于安卓系统远程桌面的输入重定向方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011111388.4A CN112511585B (zh) 2020-10-16 2020-10-16 一种基于安卓系统远程桌面的输入重定向方法及系统

Publications (2)

Publication Number Publication Date
CN112511585A true CN112511585A (zh) 2021-03-16
CN112511585B CN112511585B (zh) 2023-06-30

Family

ID=74954137

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011111388.4A Active CN112511585B (zh) 2020-10-16 2020-10-16 一种基于安卓系统远程桌面的输入重定向方法及系统

Country Status (1)

Country Link
CN (1) CN112511585B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114172879A (zh) * 2021-11-17 2022-03-11 麒麟软件有限公司 基于安卓系统远程桌面的音频播放重定向系统和方法
CN114816585A (zh) * 2022-06-20 2022-07-29 北京麟卓信息科技有限公司 一种跨运行环境的远程输入重定向方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104040995A (zh) * 2012-12-07 2014-09-10 华为技术有限公司 多媒体重定向方法以及多媒体服务器以及计算机系统
CN104704448A (zh) * 2012-08-31 2015-06-10 思杰系统有限公司 本地和远程计算环境之间的反向无缝集成
US20150244835A1 (en) * 2014-02-21 2015-08-27 Andrew T. Fausak Transcoding instance with multiple channels
US20170041398A1 (en) * 2015-08-03 2017-02-09 Citrix Systems, Inc. Virtualizing device management services on a multi-session platform
CN107220083A (zh) * 2017-05-22 2017-09-29 韩皓 一种安卓系统中免安装运行应用程序的方法和系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104704448A (zh) * 2012-08-31 2015-06-10 思杰系统有限公司 本地和远程计算环境之间的反向无缝集成
CN104040995A (zh) * 2012-12-07 2014-09-10 华为技术有限公司 多媒体重定向方法以及多媒体服务器以及计算机系统
US20150244835A1 (en) * 2014-02-21 2015-08-27 Andrew T. Fausak Transcoding instance with multiple channels
US20170041398A1 (en) * 2015-08-03 2017-02-09 Citrix Systems, Inc. Virtualizing device management services on a multi-session platform
CN107220083A (zh) * 2017-05-22 2017-09-29 韩皓 一种安卓系统中免安装运行应用程序的方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
施克蒙: "《基于LXC的Android桌面云系统的设计与实现》", 《中国优秀硕士论文库全文库 信息科技辑》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114172879A (zh) * 2021-11-17 2022-03-11 麒麟软件有限公司 基于安卓系统远程桌面的音频播放重定向系统和方法
CN114816585A (zh) * 2022-06-20 2022-07-29 北京麟卓信息科技有限公司 一种跨运行环境的远程输入重定向方法
CN114816585B (zh) * 2022-06-20 2022-09-02 北京麟卓信息科技有限公司 一种跨运行环境的远程输入重定向方法

Also Published As

Publication number Publication date
CN112511585B (zh) 2023-06-30

Similar Documents

Publication Publication Date Title
US7627658B2 (en) Presentation service which enables client device to run a network based application
US8010679B2 (en) Methods and systems for providing access to a computing environment provided by a virtual machine executing in a hypervisor executing in a terminal services session
US20160124760A1 (en) Cloud computing system and method
EP2375328A2 (en) Methods and Systems for Providing Access to a Computing Environment
EP2369479A2 (en) Methods and systems for providing access to a computing environment
CN111061540A (zh) 一种基于容器技术的应用虚拟化方法及系统
CN112511585B (zh) 一种基于安卓系统远程桌面的输入重定向方法及系统
WO2007100942A9 (en) Methods and systems for providing access to a computing environment provided by a virtual machine executing in a hypervisor executing in a terminal services session
CN110266701B (zh) 智能设备数据传输方法、装置、介质及电子设备
CN110275787B (zh) 在线平台数据传输方法、装置、介质及电子设备
US10834164B2 (en) Virtualizing audio and video devices using synchronous A/V streaming
CN114040017A (zh) 一种Android系统远程桌面服务端摄像头重定系统及方法
CN117395235B (zh) 一种基于远程桌面和web技术的云化应用系统及其方法
US12020091B2 (en) Bridging virtual desktops under nested mode
CN102387118A (zh) 一种数据输出方法及装置
CN115664797A (zh) 信息传输方法、装置、设备及存储介质
CN117149122A (zh) 同屏互动方法、装置、系统、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant