说明:收录全网最新的团体标准 提供单次或批量下载
(19)国家知识产权局 (12)发明 专利 (10)授权公告 号 (45)授权公告日 (21)申请 号 202211238348.5 (22)申请日 2022.10.11 (65)同一申请的已公布的文献号 申请公布号 CN 115309465 A (43)申请公布日 2022.11.08 (73)专利权人 北京麟卓信息科技有限公司 地址 100085 北京市海淀区西三 旗昌临801 号27号3层310、 312 (72)发明人 温研  (51)Int.Cl. G06F 9/4401(2018.01) G06F 3/0354(2013.01) G06F 3/038(2013.01) G06F 9/451(2018.01)(56)对比文件 US 2016301641 A1,2016.10.13 CN 114995716 A,202 2.09.02 CN 114816585 A,202 2.07.29 CN 114385047 A,202 2.04.22 审查员 廖然 (54)发明名称 一种跨运行环境的低延迟鼠标驱动优化方 法 (57)摘要 本发明公开了一种跨运行环境的低延迟鼠 标驱动优化方法, 通过令Linux系统的鼠标驱动 同时维护标准设备文件及安卓设备文件, 并仅将 与安卓应用相关的能够操作安卓视图的鼠标事 件写入安卓设备文件, 同时安卓兼容环境内的输 入管理服务根据安卓设备文件的信息构造安卓 系统鼠标事件 再将其发送至对应的安卓应用, 实 现了安卓兼容环境对鼠标事件的快速处理, 减少 了Linux侧与安卓侧的鼠标事件处理流程, 降低 了安卓应用对鼠标移动、 单击等操作的响应延 迟, 改善了用户的使用体验。 权利要求书2页 说明书7页 CN 115309465 B 2022.12.06 CN 115309465 B 1.一种跨 运行环境的低延迟鼠标驱动优化方法, 其特 征在于, 包括以下步骤: 步骤1、 在Linux系 统初始化鼠标驱动时创建标准设备文件及安卓设备文件, 并将安卓 设备文件导入安卓兼容环境内; 新建安卓应用窗口列表, 所述安卓应用窗口列表用于记录 安卓应用窗口的TaskID、 窗口矩形信息及安卓内部序列Z ‑OrderN, 所述窗口矩形信息包括 安卓应用窗口对应视图的左上角坐标和窗口大小; 步骤2、 新建安卓应用窗口时, 安卓应用显示单元计算所有安卓应用窗口的Z ‑OrderN, 由所有安卓应用窗口的TaskID及Z ‑OrderN组成Z ‑OrderN序列对; 将由新建安卓应用窗口的 窗口矩形信息、 Task ID及Z‑OrderN序列对组成的新建窗口消息发送至鼠标驱动; 关闭安卓应用窗口时, 安卓应用显示单元计算所有安卓应用窗口的Z ‑OrderN, 将由当 前安卓应用窗口 的TaskID及Z‑OrderN序列对组成的关闭窗口消息发送至鼠标驱动; 最小化安卓应用窗口时, 安卓应用显示单元计算所有安卓应用窗口的Z ‑OrderN, 再将 由当前安卓应用窗口 的TaskID及Z‑OrderN序列对组成的最小化窗口消息发送至鼠标驱动; 当安卓应用显示单元接收到鼠标按下事件时, 安卓应用显示单元计算所有安卓应用窗 口的Z‑OrderN, 再将由Z ‑OrderN序列对组成的鼠标按下消息发送至鼠标驱动; 当安卓应用显示单元接收到鼠标按下事件及改变大小事件时, 安卓应用显示单元计算 所有安卓应用窗口的Z ‑OrderN, 再将由Z ‑OrderN序列对组成的停止写入消息发送至鼠标驱 动; 当安卓应用显示单元接收到鼠标按下事件及鼠标拖拽事件时, 安卓应用显示单元计算 所有安卓应用窗口的Z ‑OrderN, 再将Z ‑OrderN序列对组成的停止写入消息发送至鼠标驱 动; 当安卓应用显示单元接收到鼠标抬 起事件时, 如果此前已收到改变大小事件或鼠标拖 拽事件则获取当前安卓应用窗口的窗口矩形信息, 并计算所有安卓应用窗口的Z ‑OrderN, 再将由当前安卓应用窗口的TaskID、 窗口矩形信息及Z ‑OrderN序列对组成的鼠标抬起消息 发送至鼠标驱动; 如果此前未收到改变大小事件及鼠标拖拽事件则计算所有安卓应用窗口 的Z‑OrderN, 再将由当前安卓应用窗口的TaskID及Z ‑OrderN序列对组成的鼠标抬起消息发 送至鼠标驱动; 当安卓应用显示单元接收到安卓应用窗口状态变化事件时, 安卓应用显示单元计算所 有安卓应用窗口的Z ‑OrderN, 再将Z ‑OrderN序列对组成的更新安卓应用窗口列表消息发送 至鼠标驱动; 步骤3、 当鼠标驱动接收到新建窗口消息时, 将新建安卓应用窗口的窗口矩形信息及 TaskID添加到安卓应用窗口列表中, 并以Z ‑OrderN序列对更新 安卓应用窗口列表; 当鼠标驱动接收到关闭窗口消息时, 将当前安卓应用窗口的TaskID的相关信息从安卓 应用窗口列表中删除, 并以Z ‑OrderN序列对更新 安卓应用窗口列表; 当鼠标驱动接收到最小化窗口消息时, 将安卓应用窗口列表中与当前安卓应用窗口 TaskID相对应的窗口矩形信息的数据均设为零, 并以Z ‑OrderN序列对更新安卓应用窗口列 表; 当鼠标驱动接收到鼠标按下消息时, 以Z ‑OrderN序列对更新安卓应用窗口列表, 再提 取输入事件中的鼠标坐标及鼠标按键状态, 遍历安卓应用窗口列 表判断是否存在满足鼠标 坐标位于窗口矩形的范围内的安卓应用窗口 的记录, 若存在则执 行步骤4, 否则不响应;权 利 要 求 书 1/2 页 2 CN 115309465 B 2当鼠标驱动接收到停止写入消息时, 以Z ‑OrderN序列对更新安卓应用窗口列表, 并停 止向安卓设备文件中写入数据; 当鼠标驱动接收到鼠标抬起消息时, 若鼠标抬起消息中包含窗口矩形信息, 则以当前 安卓应用窗口的TaskID、 窗口矩形信息及Z ‑OrderN序列对更新安卓应用窗口列表; 否则以 Z‑OrderN序列对更新安卓应用窗口列表, 再提取输入事件中的 鼠标坐标及鼠标按键状态, 遍历安卓应用窗口列表判断是否存在满足鼠标坐标位于窗口矩形的范围内的安卓应用窗 口的记录, 若存在则执 行步骤4, 若不存在则不响应; 当鼠标驱动 接收到更新安卓应用窗口列表消息时, 以Z ‑OrderN序列对更新安卓应用窗 口列表; 步骤4、 根据鼠标坐标与记录的窗口矩形的左上角坐标, 计算鼠标坐标相对于安卓兼容 环境的坐标形成鼠标安卓坐标, 再将鼠标安卓坐标、 鼠标按键状态及记录的TaskID写入安 卓设备文件中; 步骤5、 安卓兼容环境内的输入管理服务读取安卓设备文件中新增的鼠标安卓坐标、 鼠 标按键状态及记录的TaskID, 根据TaskID查询当前是否存在具有可见Activity且TaskID也 相同的安卓应用窗口: 如果存在, 则判断安卓坐标是否与其保存的鼠标当前坐标相同, 如果相同则将鼠标按 键状态转换为安卓内的ACTION_DOWN或ACTION_UP后, 在以安卓坐标及ACTION_DOWN或 ACTION_UP构建安卓内的TouchEvent; 如果不相同, 则说明当前事件为鼠标移动事件, 因此 以安卓坐标及ACTION_MOVE构建安卓内的TouchEvent, 并以安卓坐标更新其保存的鼠标当 前坐标; 然后将Touc hEvent发送至Task ID对应的可 见Activity, 执 行步骤6; 如果不存在, 则将新增信息发送至ActivityMana gerService; 步骤6、 安卓兼容环境内的Activity 响应接收到的Touc hEvent。 2.根据权利要求1所述的低延迟鼠标驱动优化方法, 其特征在于, 所述鼠标安卓坐标的 计算方式为: 具体来说, X鼠标安卓 坐 标=X鼠标坐 标‑X窗 口矩 形 的左 上角 坐 标, Y鼠标安卓 坐 标=Y鼠标坐 标‑Y窗 口矩 形 的左 上角 坐 标。 3.根据权利 要求1所述的低延迟鼠标驱动优化方法, 其特征在于, 所述Z ‑OrderN的计算 方法为: 通过窗口管理器接口获取所有安卓应用窗口在Linux系统内窗口排序z ‑order值, 再将获取的值从小到大排序, 最后按照小到大的顺序将z ‑order赋值 为0到N得到Z ‑OrderN。 4.根据权利要求1所述的低延迟鼠标驱动优化方法, 其特征在于, 所述安卓应用显示单 元通过ioctl接口将所述新建窗口消息、 关闭窗口消息、 最小化窗口消息、 鼠标按 下消息、 停 止写入消息、 鼠标抬起消息或更新 安卓应用窗口列表消息发送至鼠标驱动。权 利 要 求 书 2/2 页 3 CN 115309465 B 3

.PDF文档 专利 一种跨运行环境的低延迟鼠标驱动优化方法

文档预览
中文文档 10 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共10页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种跨运行环境的低延迟鼠标驱动优化方法 第 1 页 专利 一种跨运行环境的低延迟鼠标驱动优化方法 第 2 页 专利 一种跨运行环境的低延迟鼠标驱动优化方法 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 17:10:09上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。