基于Android平台的鼠标设计与实现
概要:针对当前基于Android平台的电子产品的市场需求,以谷歌公布的Gingerbread源码为软件平台,以东南大学国家专用集成电路系统工程技术研究中心设计的基于国产CPU的sep6200芯片为硬件平台,在分析Android输出系统框架的基础上,设计并构建了软件鼠标和硬件鼠标功能,方案设计灵活性。对于手执终端设备来说,鼠标的反对大大提高了用户的体验性能,具备一定的市场应用于价值。 随着嵌入式系统产业的高速发展,智能手执终端设备的操作系统也更加多样化。
目前市场上备受广大用户注目的是Google的Android、微软公司的WindowMobile、诺基亚的Symbian、RIM的黑莓和苹果的iOS。 Android是Google于2007年11月05日宣告的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件构成。凭借开放源码完全免费等特性,其在嵌入式领域异军突起,如今占有智能手执终端设备领域的半壁江山。 以Android系统为配备平台的电子产品更加风行,尤其是平板电脑的经常出现,使用户对产品硬件配备和体验性能方面的拒绝更加低。
而Android本身获取的交互方式仅限于按键,触摸屏和轨迹球,无法满足用户的市场需求。针对其输出装置的严重不足,本文构建了一种用户熟知的交互方式:鼠标,其毫无疑问是最极致的嵌入式方式。鼠标的构建使Android系统应用于在其他领域沦为有可能,并同时提升了Android产品的市场竞争力。
1输出系统 1.1输出系统驱动框架 如图1右图,Android输出系统中的驱动框架由事件处理层(EventHandler),核心层(InputCore)和驱动层(InputDriver)三部份构成。 EventHandler用作用户空间提供输出事件。
用户空间关上输出设备的设备节点,然后对节点展开读写操作以取得鼠标移动信息,或者键盘信息等等。这里对设备节点的文件操作者函数就是由该层获取;Inputdriver明确设备的驱动;InputCore负责管理所有的资源并相连驱动层和事件处理层。 图1输出系统驱动框图 1.2输出系统上层框架 随着Android系统的大大升级,其输出系统框架也发生变化,相对于2.1版本来说,Gingerbread的输出系统比较复杂,同时创立了三个线程,后用了电子邮件共享内存机制,且很多在Java层的数据处理都放在了c++底层,然而这样却可以使性能明显增加,节省系统资源。
如图2右图,WindowManagerService创立了三个线程: InputReaderThread通过EventHub加载输出事件,并通过有所不同事件类型的InputMapper展开数据处理,然后放在输出事件队列;InputDispatcherThread将队列中的输出事件放入通过InputPublisher放在电子邮件共享内存里;PolicyThread管理当前窗口表明等。 图2输出系统上层框图 InputPublisher和InputCONsumer通过InputChannel展开双向通信。当InputPublisher把输出事件放在共享内存时会通报InputConsumer有事件起源于,InputConsumer接到通报后会从共享内存放入事件数据,通过InputQueue传授给ViewRoot,ViewRoot对事件展开分类后传授给当前具备焦点的View(FocusView)处置。
InputConsumer处置完了事件后不会通报InputPublisher已处置已完成,InputPublisher收到通报后不会开始向共享内存传输下一次输出事件。 2鼠标构建 无论是硬鼠标还是软鼠标,其构建机制都是一样的。
都必须加载事件展开数据处理,唯一有所不同的是当构建鼠标移动时,硬鼠标是把鼠标坐标值传授给上层,而软鼠标则是把鼠标坐标值传授给驱动。鼠标事件的加载和处理过程的构建: (1)在EventHub中对鼠标事件特鼠标类型标志位; (2)在InputReader中创立MouseInputMapper类,该类主要对鼠标的数据展开处置,主要成员函数定义如下: 撰写该类的成员函数,构建鼠标事件数据的处置,并把该类的实例化对象与鼠标事件对应一起。
这样当输出事件是鼠标事件时就可以调用对应的处理函数。
本文关键词:球王会体育,基于,Android,平台,的,鼠标,设计,与,实现,概要
本文来源:球王会-www.wulihe.com.cn
同类文章排行
- 首次小组垫底:国米一连三年欧冠小组赛未出线,谁是罪魁罪魁
- 欧冠16强全部出炉!英超、西甲各4队,意甲、德甲各3队,法甲
- 江北消防志愿服务进社区 居民喜获防火“宝典”
- 类脑芯片:AI芯片新方向——新氦类脑智能推动类脑智能及AI芯片
- 欧冠和联赛哪个重要?利物浦帝星:固然是联赛!
- 新化合物能消灭四分之一已知类型癌症
- 过期家电危险多 重庆渝北消防进社区送安全手册
- 11月7日能财情兼收的生肖
- 河南省开展幼儿园消防安全专项治理
- 比特币难度调整与BSV价格的飙升:球王会官网
最新资讯文章
- 基于Android平台的鼠标设计与实现
- 香港首座零碳建筑正式开放
- 传感器融合将更进一步成为常态
- 乌龟Diego光荣退休:数十年贡献800个孩子 恢复种群数量【球王会
- 欧冠视频直播:尤文图斯VS巴萨 梅西PK迪巴拉
- 3轮10张红牌创中超历史!申花两将被停赛,踹裆、爆头行动不停
- 欧冠半决赛即将打响!朱婷时隔半年再战埃格努,两大焦点隔网
- 足球直播:欧冠小组赛 阿贾克斯vs利物浦 荷甲权门难挡红军
- 常德:幼儿园师生进红门 消防知识记心中
- 应急管理部:湖北消防为新改建收治医院消防安全24小时现场监护
- 材料车间停用消防设施 四平消防查封责改
- 上海松江区召开安全生产工作会议
- 新形势下WMS仓库管理的MES制造执行系统
- 智慧城市,数字深圳的历史机遇
- 华为P40细节曝光:双模5G+4000万徕卡四摄
- 首款真正的无人驾驶汽车上路行驶
- 全红!昨天推荐五场角逐全部红单!今天看场欧冠,竞彩006:基
- 比利时VAT,比利时VAT税率是几多?
- AC米兰队史上的今天:2007年2月20日欧冠米兰客场0比0凯尔特人
- 【欧冠】VAR补时赠点杀!曼联3:1客胜逆转神奇淘汰巴黎!