[发明专利]Wine与安卓手机软键盘输入的整合方法有效
申请号: | 201110172844.0 | 申请日: | 2011-06-24 |
公开(公告)号: | CN102331927A | 公开(公告)日: | 2012-01-25 |
发明(设计)人: | 毛德操;王承志;徐鼎鼎;陈天洲;傅唯威 | 申请(专利权)人: | 浙大网新科技股份有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44;H04M1/725 |
代理公司: | 杭州宇信知识产权代理事务所(普通合伙) 33231 | 代理人: | 张宇娟 |
地址: | 310030 浙江省杭州市*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | wine 手机 软键 输入 整合 方法 | ||
技术领域
本发明涉及移动通信领域,尤其涉及Wine与安卓手机软键盘输入的整合方法。
背景技术
以手机为代表的智能化移动终端设备既是计算机技术的一个重要发展方向,又是一个竞争十分激烈的市场。自从谷歌公司和开放手机联盟推出Android操作系统和基于Androuid的手机以来,很快就在世界手机市场上占有了不小的份额,各种Android手机层出不穷,由中国移动开发并推出的OPhone也是一种Android手机。
所谓Android操作系统,实际上是对Linux操作系统的一种改编和扩充,它的内核基本上就是Linux的内核,但是在用户空间却专门针对手机和移动终端设备的特点作了大幅的改进和增强,这些改动大都与编程模式和图形界面,即图形化用户界面(GUI)有关。
另一种常用于手机的操作系统是微软的WinCE和WM(Windows Mobile),这是在微软的Windows操作系统上发展起来的。基于WinCE/WM的手机也在市场上占不小的份额,并且开发出了数量不小的WinCE/WM应用软件。如果能把这些应用软件拿到Android手机上运行,对于提高Android手机的市场占有率显然是有利的。
Wine是一款优秀的Linux系统平台下的模拟器软件,用来将Windows系统下的软件在Linux系统下稳定运行,该软件更新频繁,日臻完善,可以运行许多大型Windows系统下的软件。当把Wine移植到ARM架构的Linux平台上以后,WinCE/WM应用软件已经可以在Wine的支持下在采用ARM处理器的Linux平台上运行,同样也可以在Android平台运行。
在带图形界面的Linux操作系统中,有关图形界面的功能都是由X视窗系统提供的,输入法也是图形界面功能的一部分。运行着应用软件的进程都不直接读取键盘输入,而只是通过进程间通信从X服务进程获取输入。人机交互的输入先由本系统中唯一的X服务进程读取,由X服务进程统一加以前期的处理,然后根据屏幕上光标的当前位置以及当前处于“聚焦”状态的视窗配送给合适的进程/线程。
X视窗属于另一个开源软件项目,早在Unix时代即已存在。由于Linux系统大多离不开图形界面,X视窗实际上已经成了Linux操作系统的一部分。为适应手机和其它嵌入式系统的需要,人们还将X视窗加以裁剪、缩编、简化,成为一个小型化的版本称为TinyX,所以TinyX是专门与嵌入式Linux配对使用的X视窗系统。
然而,与常规的Linux平台不同,Android/OMS平台不使用TinyX,也不支持依靠X视窗服务进程(Xserver)提供GUI的Linux应用。在Android/OMS平台上,所有来自键盘和鼠标器的输入全部为一个“窗口管理器”线程所截获,再由这个线程分发给当前正在运行的“应用(Activity)”。这样就引出了如何整合Wine和Android/OMS的键盘输入问题。因为TinyX和Android将会争抢来自键盘和鼠标器的输入,也会各自为政地往屏幕上画图。
为解决Wine与Android/OMS软键盘输入整合的问题,原有的中国移动的程序模型是在运行WinCE/WM应用时,在Android也启动一个Java进程作为Wine的代理,称为wineproxy,并使得来自键盘/鼠标器的输入统一由Android加以截获,将其交给wineproxy,而后者将来自键盘/鼠标器的输入转发给Xserver。通过这样一种消息传递方式,保证消息的单向流通,避免发生消息多重传递而引发的混乱与冲突。
然而这个方案以及后来提出的验证原型,在实际上还有很多问题需要解决,其中最重要的是在什么时候要(在屏幕上)弹出软键盘、什么时候又不应该弹出软键盘的问题。
发明内容
针对现有技术中存在的上述问题,本发明提供了Wine与安卓手机软键盘输入的整合方法。
本发明提供了Wine与安卓手机软键盘输入的整合方法,包括:
步骤1,当发生软键盘事件时,Wine代理向X视窗服务进程发出事件通知;
步骤2,X视窗服务进程按照预定的格式对事件通知进行转换后,将转换后的事件通知发送至Winex11.drv中的键盘/鼠标器输入处理程序;
步骤3,Winex11.drv将软键盘事件上交到公共控件管理模块,公共控件管理模块决定弹出软键盘;
步骤4,X视窗服务进程将来自Wine的弹出软键盘请求转发给Wine代理,Wine代理执行弹出软件盘操作。
在一个示例中,安卓手机为Ophone手机。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙大网新科技股份有限公司,未经浙大网新科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110172844.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:盖帽锁
- 下一篇:一种触摸点跟踪定位校正方法及其系统