公开/公告号CN103810121A
专利类型发明专利
公开/公告日2014-05-21
原文格式PDF
申请/专利权人 福建升腾资讯有限公司;
申请/专利号CN201410055289.7
申请日2014-02-19
分类号G06F13/10;G06F3/033;G06F9/455;H04L29/08;
代理机构福州市鼓楼区京华专利事务所(普通合伙);
代理人宋连梅
地址 350000 福建省福州市仓山区金山工业区金山大道618号21#、22#、55#
入库时间 2024-02-20 00:11:30
法律状态公告日
法律状态信息
法律状态
2017-01-18
授权
授权
2014-06-25
实质审查的生效 IPC(主分类):G06F13/10 申请日:20140219
实质审查的生效
2014-05-21
公开
公开
技术领域
本发明涉及一种Android系统环境下windows虚拟化桌面连接的鼠标右 键实现方法。
背景技术
Android系统自诞生至今已经成为当今主流的2大移动操作系统之一, 当前Android系统被广泛使用在手机及平板设备上。但是自从Android4.0系 统发布以来,Android系统已经慢慢开始进入通常的桌面办公市场,基于 Android系统的远程桌面协议实现越来越多,其中以微软的RDP协议, VMware公司的PCoIP协议,Citrix公司的ICA协议为主要代表。但是,由 于Android系统自诞生之日起就是为触屏设备设计的,鼠标的使用在Android 系统中被极度弱化,即使在Android3.0系统开始,鼠标被带回到Android系 统中,它也是一个模拟的触屏设备,其中最明显的就是鼠标右键在Android 系统下无法使用,鼠标右键被系统处理为系统返回键。这个问题在Android 系统进入桌面办公领域后变得极为不可接受,用户在使用远程桌面协议登录 系统后,完全无法使用鼠标进行办公,只能通过长按左键的方式实现在远程 桌面上的鼠标右键使用。
发明内容
本发明要解决的技术问题,在于提供一种Android系统环境下windows 虚拟化桌面连接的鼠标右键实现方法。
本发明是这样实现的:一种Android系统环境下windows虚拟化桌面连 接的鼠标右键实现方法,包括
步骤10、修改Linux系统鼠标驱动,当检测到鼠标右键按下Down事件 时,先投递一个鼠标左键按下Down事件模拟鼠标左键按下,获取当前系统 时间并把系统时间往前调一个系统定义的长按操作判定时间间隔;
步骤20、当鼠标右键松开Up事件产生时,获取当前系统时间,并根据 触发按键长按事件的时间计算鼠标右键按下到松开的等待时间,再投递一个 鼠标左键松开Up事件模拟鼠标左键松开,计算模拟鼠标左键长按时间并把 当前系统时间往后调一个系统定义的长按操作判定时间间隔,以恢复原来的 系统运行时间;
步骤30、通过前两个步骤就触发了一个鼠标左键长按事件,系统会将 此长按事件发给云桌面系统,实现了系统鼠标右键功能。
本发明具有如下优点:本发明方法将鼠标右键消息模拟发送2个鼠标点 击时间,并让系统认为2个事件时间间隔大于系统判断长按的时间间隔,以 实现欺骗系统的目的,从而实现了为Android系统环境下的windows虚拟化云 桌面连接提供系统鼠标右键功能,极大的方便了Android下的windows虚拟化 桌面用户。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明方法执行流程图。
具体实施方式
如图1所示,本发明的Android系统环境下windows虚拟化桌面连接的 鼠标右键实现方法,包括
步骤10、修改Linux系统鼠标驱动,当检测到鼠标右键按下Down事件 时,先投递一个鼠标左键按下Down事件模拟鼠标左键按下,获取当前系统 时间并把系统时间往前调一个系统定义的长按操作判定时间间隔;例如:系 统定义的长按操作判定间隔时间为0.5s,鼠标右键按下时获取的当前系统时 间为01时00分0秒,则投递Down事件后,把系统时间往前调一个系统定 义的长按操作判定间隔时间(即0.5秒)后,当前系统时间为01时00分0.5 秒。
步骤20、当鼠标右键松开Up事件产生时,获取当前系统时间(即步骤 10中往前调整后的时间),并根据触发按键长按事件的时间计算鼠标右键 按下到松开的等待时间,再投递一个鼠标左键松开Up事件模拟鼠标左键松 开,计算模拟鼠标左键长按时间并把当前系统时间往后调一个系统定义的长 按操作判定时间间隔(即0.5秒),以恢复原来的系统运行时间;例如:鼠 标右键松开(Up)时获取的当前系统时间为01时00分0.6秒(即鼠标右键 从按下到松开历时0.1秒),此时投递鼠标左键松开Up事件,然后把系统 时间往回调0.5秒,即恢复正常的系统时间:01时00分0.1秒。
步骤30、通过前两个步骤就触发了一个鼠标左键长按事件,系统会将 此长按事件发给云桌面系统,实现了系统鼠标右键功能。
本发明的原理如下:
如背景技术中提到的,在Android系统上系统上使用鼠标右键时会被系 统映射为返回键发送给应用程序。若在Android系统中当用户长按鼠标右键 时,系统会发送Long Press消息给应用程序,应用程序在收到该消息后会执 行相应的操作,而在桌面办公的远程桌面程序中,该操作会被处理为鼠标右 键消息。这样,鼠标右键系统在Android系统最底层的Linux内核中依然能 被识别,只是在转发消息是被转发为系统返回消息,但是Android系统并没 有定义鼠标右键的消息。当长按鼠标时,Android系统会检测2次鼠标时间 的系统间隔时间,判断鼠标事件是否为长按事件。在系统内核中,我们检测 鼠标右键消息,当收到鼠标右键消息时,我们模拟发送2个鼠标点击时间, 并让系统认为2个事件时间间隔大于系统判断长按的时间间隔,即可实现欺 骗系统的目的。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人 员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发 明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的 修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
机译: Windows操作系统环境下的关键同时输入处理装置及方法
机译: 基于服务器虚拟化的虚拟桌面协议的加速方法及用于实现相同功能的虚拟化服务器
机译: 使用Windows操作系统(WINDOWS登录)的计算机上的用户登录,对软件和数字文件等的终端或长期访问。在不使用任何其他硬件的情况下进行交易,在不进行任何在线连接和完全离线的情况下,使用该应用程序访问一次使用密码。和方法