用于实现远程虚拟桌面和应用程序的方法以及设备的制造方法

文档序号:8361189阅读:370来源:国知局
用于实现远程虚拟桌面和应用程序的方法以及设备的制造方法
【技术领域】
[0001]本申请涉及通信领域,特别是涉及用于实现远程虚拟桌面和应用程序的方法以及设备。
【背景技术】
[0002]传统的远程虚拟桌面和应用程序是指通过远程桌面协议将集成在服务器端的属于个人的桌面和应用程序界面投递给各种终端,例如:平板电脑以及智能手机等等,同时把终端的各种输入输出设备,例如:键盘,鼠标,通用串行总线外设,串并口外设,耳机和麦克风等等映射到服务器端,使得用户可以通过任何设备,在任何地点,任何时间通过网络访问在服务器上属于个人的桌面系统,从而提高桌面和应用程序使用的灵活性。
[0003]在这种方式下,远程虚拟桌面和应用程序实现起来比较简单,对服务器上的桌面和应用程序进行“截图”以获得图片,并映射给终端进行显示。而在终端,只需要获得用户对鼠标的操作或者键盘的操作,然后将鼠标操作或者键盘操作发送给服务器,服务器再利用软件模拟鼠标的操作或者键盘的操作来对桌面和应用程序进行控制,再将控制后的结果进行“截图”以获得图片,并映射给终端,从而达到和在服务器端操作鼠标和键盘来对桌面和应用程序进行控制一样的效果。
[0004]但是,在这种方式下,每次用户操作都必须经过两次网络传输,终端将用户的操作反馈给服务器,服务器根据用户的操作进行响应,服务器再将响应的结果返回给终端进行显示。而现今的网络传输速度特别是移动网络传输速度有限,经过了两次网络传输,将会导致时延非常大,例如,一个字符从输入到显示大概要I秒左右的时间,导致用户无法接受。

【发明内容】

[0005]本申请提供用于实现远程虚拟桌面和应用程序的方法以及设备,能够提高响应的速度。
[0006]本申请第一方面提供一种用于实现远程虚拟桌面和应用程序的方法,包括如下步骤:受托管方接收托管方所发送的第一组件模型树,其中,所述第一组件模型树是提取所述托管方的桌面的组件和/或正在运行的应用程序的组件生成的;根据组件映射表将第一组件模型树转换为第二组件模型树,其中,所述第二组件模型树中全部为本地化的组件;接收本地操作,并调用所述第二组件模型树中对应所述本地操作的组件对所述本地操作进行响应。
[0007]结合第一方面,本申请第一方面的第一种可能的实施方式中,所述接收本地操作,并调用所述第二组件模型树中对应所述本地操作的组件对所述本地操作进行响应的步骤包括:如果所述本地操作为显示类操作,只调用所述第二组件模型树中对应所述本地操作的组件对所述本地操作进行响应。
[0008]结合第一方面或者第一方面的第一种可能的实施方式,本申请第一方面的第二种可能的实施方式中,所述接收本地操作,并调用所述第二组件模型树中对应所述本地操作的组件对所述本地操作进行响应的步骤包括:如果所述本地操作为输入类操作,调用所述第二组件模型树中对应所述本地操作的组件对所述本地操作进行响应,并在第一时间段后将第一重定向消息向所述托管方发送,其中,所述第一重定向消息包括所输入的数据以及进行输入数据的第二组件模型树中的组件的编号。
[0009]结合第一方面,本申请第一方面的第三种可能的实施方式中,所述接收本地操作步骤之后包括:判断所述本地操作是否为对所述第二组件模型树中的组件进行的操作,如果不是对所述第二组件模型树中的组件进行的操作,向所述托管方发送第二重定向消息,其中,所述第二重定向消息包括进行所述本地操作时鼠标的事件以及坐标,和/或键盘所输入的字符。
[0010]本申请第二方面还提供一种用于实现远程虚拟桌面和应用程序的方法,托管方提取自身的桌面的组件和/或应用程序的组件,以根据所述组件生成第一组件模型树;将所述第一组件模型树发送给受托管方。
[0011]结合第二方面,本申请第二方面的第一种可能的实施方式中,所述方法还包括:接收所述受托管方返回的第一重定向消息,并根据所述第一重定向消息刷新第一组件模型树,以将所述受托管方的操作重定向到所述托管方,其中,所述第一重定向消息包括在受托管方所输入的数据以及进行输入数据的第二组件模型树中的组件的编号,所述第二组件模型树的全部组件都是所述受托管方将第一组件模型树的组件依照组件映射表进行映射得到的本地化组件;根据所述第二组件模型树中的组件的编号查找到所述第一组件模型树中对应的组件,并调用所述第一组件模型树中对应的组件对所述输入的数据进行响应。
[0012]结合第二方面,本申请第二方面的第二种可能的实施方式中,所述方法还包括:接收所述受托管方发送的第二重定向消息,其中,所述第二重定向消息包括受托管方进行操作时鼠标的事件以及坐标,和/或键盘所输入的字符;调用键鼠应用程序的组件对鼠标的事件以及坐标,和/或键盘所输入的字符进行响应。
[0013]本申请第三方面提供一种终端,所述终端包括:接收模块、映射模块以及响应模块,其中,所述接收模块用于接收托管方所发送的第一组件模型树,其中,所述第一组件模型树是提取所述托管方的桌面的组件和/或正在运行的应用程序的组件生成的,所述接收模块将所述第一组件模型树发送给所述映射模块;所述映射模块用于接收所述第一组件模型树,根据组件映射表将第一组件模型树转换为第二组件模型树,其中,所述第二组件模型树中全部为本地化的组件,所述映射模块将所述第二组件模型树发送给所述响应模块;所述响应模块用于接收所述第二组件模型树,接收本地操作,并调用所述第二组件模型树中对应所述本地操作的组件对所述本地操作进行响应。
[0014]结合第三方面,本申请第三方面的第一种可能的实施方式中,所述响应模块还用于在所述本地操作为显示类操作时,只调用所述第二组件模型树中对应所述本地操作的组件对所述本地操作进行响应。
[0015]结合第三方面或者第三方面的第一种可能的实施方式,本申请第三方面的第二种可能的实施方式中,所述响应模块还用于在所述本地操作为输入类操作时,调用所述第二组件模型树中对应所述本地操作的组件对所述本地操作进行响应,并在第一时间段后将第一重定向消息向所述托管方发送,其中,所述第一重定向消息包括所输入的数据以及进行输入数据的第二组件模型树中的组件的编号。
[0016]结合第三方面,本申请第三方面的第三种可能的实施方式中,所述终端还包括判断模块以及发送模块,所述判断模块用于判断所述本地操作是否为对所述第二组件模型树中的组件进行的操作,所述判断模块将所述判断结果发送给所述发送模块;所述发送模块用于接收所述判断结果,并在所述判断结果为所述本地操作不是对所述第二组件模型树中的组件进行的操作时,向所述托管方发送第二重定向消息,其中,所述第二重定向消息包括进行所述本地操作时鼠标的事件以及坐标,和/或键盘所输入的字符。
[0017]本申请第四方面提供一种服务器,包括生成模块以及发送模块,所述生成模块用于提取自身的桌面的组件和/或应用程序的组件,以根据所述组件生成第一组件模型树,所述生成模块将所述第一组件模型树发送给所述发送模块;所述发送模块用于接收所述第一组件模型树,将所述第一组件模型树发送给受托管方。
[0018]结合第四方面,本申请第四方面的第一种可能的实施方式中,所述服务器还包括接收模块以及响应模块,所述接收模块用于接收所述受托管方返回的第一重定向消息,并根据所述第一重定向消息刷新第一组件模型树,以将所述受托管方的操作重定向到所述托管方,其中,所述第一重定向消息包括在受托管方所输入的数据以及进行输入数据的第二组件模型树中的组件的编号,所述第二组件模型树的全部组件都是所述受托管方将第一组件模型树的组件依照组件映射表进行映射得到的本地化组件,所述接收模块将所述所输入的数据以及进行输入数据的第二组件模型树中的组件的编号发送给所述响应模块;所述响应模块用于接收所述所输入的数据以及进行输入数据的第二组件模型树中的组件的编号,根据所述第二组件模型树中的组件的编号查找到所述第一组件模型树中对应的组件,并调用所述第一组件模型树中对应的组件对所述输入的数据进行响应。
[0019]结合第四方面,本申请第四方面的第二种可能的实施方式中,所述服务器还包括接收模块以及响应模块,所述接收模块用于接收所述受托管方发送的第二重定向消息,其中,所述第二重定向消息包括受托管方进行操作时鼠标的事件以及坐标,和/或键盘所输入的字符,所述接收模块将所述鼠标的事件以及坐标,和/或键盘所输入的字符发送给所述响应模块;所述响应模块用于接收所述鼠标的事件以及坐标,和/或键盘所输入的字符,调用键鼠应用程序的组件对鼠标的事件以及坐标,和/或键盘所输入的字符进行响应。
[0020]本申请第五方面提供一种终端,所述终端包括:接收器以及处理器,其中,所述接收器用于接收托管方所发送的第一组件模型树,其中,所述第一组件模型树是提取所述托管方的桌面的组件和/或正在运行的应用程序的组件生成的;所述处理器用于接收所述第一组件模型树,根据组件映射表将第一组件模型树转换为第二组件模型树,其中,所述第二组件模型树中全部为本地化的组件,接收本地操作,并调用所述第二组件模型树中对应所述本地操作的组件对所述本地操作进行响应。
[0021]结合第五方面,本申请第五方面的第一种可能的实施方式中,所述处理器还用于在所述本地操作为显示类操作时,只调用所述第二组件模型树中对应所述本地操作的组件对所述本地操作进行响应。
[0022]结合第五方面或者第五方面的第一种可能的实施方式,本申请第五方面的第二种可能的实施方式中,所述终端还包括发送器,所述处理器还用于在所述本地操作为输入类操作时,调用所述第二组件模型树中对应所述本地操作的组件对所述本地操作进行响应,并在第一时间段后调用所述发送器将第一重定向消息向所述托管方发送,其中,所述第一重定向消息包括所输入的数据以及进行输入数据的第二组件模型树中的组件的编号。
[0023]结合第五方面,本申请第五方面的第三种可能的实施方式中,所述终端还包括发送器,所述处理器还用于判断
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1