一种桌面系统上安卓应用键盘映射辅助提示的显示方法技术方案

技术编号:34985298 阅读:20 留言:0更新日期:2022-09-21 14:29
本发明专利技术公开了一种桌面系统上安卓应用键盘映射辅助提示的显示方法,在安卓兼容环境内当用户配置并启动键盘映射功能并将配置文件中的按键键值转换为对应的辅助提示信息显示在配置文件中按键位置指定的安卓应用显示界面中时,通过根据安卓应用显示界面的特征提供多种形态的辅助提示信息显示方式,以使辅助提示信息的显示达到使用户能够明显辨识且不影响用户正常的视觉体验效果,本发明专利技术提供的方案无需修改安卓系统的渲染框架,因此能够有效降低性能开销,同时能够兼容多种版本的安卓系统,不需要额外维护多个版本的安卓系统。不需要额外维护多个版本的安卓系统。不需要额外维护多个版本的安卓系统。

【技术实现步骤摘要】
一种桌面系统上安卓应用键盘映射辅助提示的显示方法


[0001]本专利技术属于在桌面操作系统上运行移动应用的开发
,具体涉及一种桌面系统上安卓应用键盘映射辅助提示的显示方法。

技术介绍

[0002]Linux或Windows等桌面操作系统Android运行环境是一种在Linux或Windows操作系统上运行Android应用(App)的技术,该技术对丰富操作系统应用生态具有非常重要的意义。通常情况下,典型的安卓兼容环境主要包括安卓应用显示单元和安卓应用兼容服务,安卓应用显示单元用于在桌面操作系统上实现安卓应用的用户界面,安卓应用兼容服务用于提供运行于桌面操作系统上的安卓兼容环境,通过安卓应用显示单元与安卓应用兼容服务的相互配合实现安卓应用在桌面操作系统上的有效运行,例如,现有安卓兼容环境的实现方案有xDroid,它包括xDroidUI和xDroidServer,xDroidUI为安卓应用显示单元,xDroidServer为安卓应用兼容服务。
[0003]使用Android运行环境在桌面操作系统上运行Android应用时,由于PC计算机的显示器往往不支持触摸,通常使用鼠标点击模拟触摸事件。但是,对于复杂的Android应用窗口操作,例如游戏应用中的多点快速触摸,就需要用键盘的不同的按键对应到应用窗口的不同位置,即按下某一键,就相当于点击了应用窗口的某个位置,将键盘事件根据用户预定的设置转换为安卓系统内的触摸事件,从而实现采用键盘体验安卓系统游戏的功能。然而,对于某些大型的游戏应用往往需要设置很多按键才能满足用户的操作需求,增多的按键会导致用户对按键与显示界面区域间对应关系的记忆困难,因此为配置了键盘映射功能的安卓应用显示键盘映射辅助提示信息,对方便用户操作而言是非常必要的。
[0004]在现有的键盘映射实现方案中,键盘映射辅助提示信息无法智能选择所显示的区域,可能会产生覆盖安卓应用显示界面内文本的情况,这会导致用户操作不便甚至操作失误,进而影响用户体验。

技术实现思路

[0005]有鉴于此,本专利技术提供了一种桌面系统上安卓应用键盘映射辅助提示的显示方法,提供了多种键盘映射辅助提示的显示方式并实现了根据安卓应用显示界面的实际情况调整键盘映射辅助提示的具体显示方式。
[0006]本专利技术提供的一种桌面系统上安卓应用键盘映射辅助提示的显示方法,具体包括以下步骤:步骤1、当用户在安卓兼容环境中打开安卓应用启动键盘映射时,保存安卓应用当前显示界面;获取安卓应用当前显示窗口的窗口句柄、窗口大小和窗口左顶点位置;在桌面系统中创建始终置顶显示、背景透明的窗口作为辅助提示窗口,辅助提示窗口的大小及位置与所述当前显示窗口相同,采用所述窗口句柄设置辅助提示窗口的父窗口,辅助提示窗口设置为鼠标和键盘事件穿透模式;
步骤2、将键盘映射的按键键值转换为对应的辅助提示文本,获取辅助提示文本的文本显示范围;若辅助提示显示方式为以框体方式显示则执行步骤3,若辅助提示显示方式为以文本方式显示则执行步骤4;步骤3、根据键盘映射的文本显示范围及按键位置构建目标框体,目标框体的左顶点位置或中心位置为按键位置、尺寸为在文本显示范围基础上增加设定值,目标框体的填充颜色为具有透明度的设定值,目标框体内绘制辅助提示文本;执行步骤5;步骤4、根据键盘映射的文本显示范围及按键位置,确定安卓应用当前显示界面中对应的目标区域,计算目标区域内所有像素点的RGB值的均值,对均值取反色值;构建背景为全透明的目标框体,目标框体的左顶点位置或中心位置为按键位置,目标框体的尺寸为文本显示范围,目标框体内绘制辅助提示文本,辅助提示文本的颜色设置为反色值;执行步骤5;步骤5、在辅助提示窗口内绘制目标框体,完成键盘映射辅助提示信息的显示。
[0007]进一步地,所述步骤1中所述当用户在安卓兼容环境中打开安卓应用启动键盘映射时,若键盘映射配置文件中存在安卓应用的键盘映射配置信息并配置为开启键盘映射,则保存安卓应用当前显示界面;否则,待用户配置并保存键盘映射配置文件后,保存安卓应用当前显示界面。
[0008]进一步地,所述辅助提示窗口为无边框窗口。
[0009]进一步地,所述步骤5中所述在辅助提示窗口内绘制目标框体后,若桌面系统中的安卓应用为多窗口显示,则监听当前显示窗口的焦点事件,若当前显示窗口失去焦点,则隐藏辅助提示窗口。
[0010]进一步地,所述步骤3中在所述目标框体内绘制辅助提示文本后,执行以下步骤:步骤5.1、在安卓兼容环境中获取当前显示窗口内所有文本框内文本的位置作为显示界面文本位置,将显示界面文本位置发送至安卓应用显示单元;步骤5.2、若目标框体的左顶点位置与显示界面文本位置相同或差值小于阈值,则安卓应用显示单元以目标框体为中心计算满足与目标框体面积相同且与显示界面文本位置不同或差值不小于阈值的新区域,若存在新区域则将其作为新的目标框体并执行步骤5,若不存在则执行步骤5.4;若目标框体的左顶点位置与显示界面文本位置不同或差值不小于阈值,则执行步骤5.3;步骤5.3、识别当前显示窗口中与目标框体具有相同位置的区域内是否包含文本,若包含文本则将与目标框体具有相同位置的文本区域作为显示界面文本区域,令测试次数N的取值为零,执行步骤5.4;若未包含文本则保留目标框体作为新的目标框体后执行步骤5;步骤5.4、若N不大于阈值,则将目标框体在以框体中心点为中心、以设定像素为半径的圆周上移动,移动过程中按照设定步进获取目标框体所在新位置,以新位置的框体作为目标框体,令N自加1,令设定像素增加设定值,执行步骤5.3;若N大于阈值,则选择所包含文本面积最小的显示界面文本区域作为目标框体后执行步骤5。
[0011]进一步地,所述步骤4中在所述辅助提示文本的颜色设置为反色值后,执行以下步骤:步骤6.1、在安卓兼容环境中获取当前显示窗口内所有文本框内文本的位置作为
显示界面文本位置,将显示界面文本位置发送至安卓应用显示单元;步骤6.2、若目标框体的左顶点位置与显示界面文本位置相同或差值小于阈值,则安卓应用显示单元以目标框体为中心计算满足与目标框体面积相同且与显示界面文本位置不同或差值不小于阈值的新区域,若存在新区域则将其作为新的目标框体并执行步骤5,若不存在则执行步骤6.4;若目标框体的左顶点位置与显示界面文本位置不同或差值不小于阈值,则执行步骤6.3;步骤6.3、识别当前显示窗口中与目标框体具有相同位置的区域内是否包含文本,若包含文本则将与目标框体具有相同位置的文本区域作为显示界面文本区域,令测试次数N的取值为零,执行步骤6.4;若未包含文本则保留目标框体作为新的目标框体后执行步骤5;步骤6.4、若N不大于阈值,则将目标框体在以框体中心点为中心、以设定像素为半径的圆周上移动,移动过程中按照设定步进获取目标框体所在新位置,以新位置的框体作为目标框体,令N自加1,令设定像素增加设定值,执行步骤6.3;若N大于阈值,则选择所包含文本面积最小的显示界面文本区域作为目标框体后执行步骤5。
[0012]有益效果:1、本专利技术在安卓兼容环境内当用户配置并本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种桌面系统上安卓应用键盘映射辅助提示的显示方法,其特征在于,具体包括以下步骤:步骤1、当用户在安卓兼容环境中打开安卓应用启动键盘映射时,保存安卓应用当前显示界面;获取安卓应用当前显示窗口的窗口句柄、窗口大小和窗口左顶点位置;在桌面系统中创建始终置顶显示、背景透明的窗口作为辅助提示窗口,辅助提示窗口的大小及位置与所述当前显示窗口相同,采用所述窗口句柄设置辅助提示窗口的父窗口,辅助提示窗口设置为鼠标和键盘事件穿透模式;步骤2、将键盘映射的按键键值转换为对应的辅助提示文本,获取辅助提示文本的文本显示范围;若辅助提示显示方式为以框体方式显示则执行步骤3,若辅助提示显示方式为以文本方式显示则执行步骤4;步骤3、根据键盘映射的文本显示范围及按键位置构建目标框体,目标框体的左顶点位置或中心位置为按键位置、尺寸为在文本显示范围基础上增加设定值,目标框体的填充颜色为具有透明度的设定值,目标框体内绘制辅助提示文本;执行步骤5;步骤4、根据键盘映射的文本显示范围及按键位置,确定安卓应用当前显示界面中对应的目标区域,计算目标区域内所有像素点的RGB值的均值,对均值取反色值;构建背景为全透明的目标框体,目标框体的左顶点位置或中心位置为按键位置,目标框体的尺寸为文本显示范围,目标框体内绘制辅助提示文本,辅助提示文本的颜色设置为反色值;执行步骤5;步骤5、在辅助提示窗口内绘制目标框体,完成键盘映射辅助提示信息的显示。2.根据权利要求1所述的显示方法,其特征在于,所述步骤1中所述当用户在安卓兼容环境中打开安卓应用启动键盘映射时,若键盘映射配置文件中存在安卓应用的键盘映射配置信息并配置为开启键盘映射,则保存安卓应用当前显示界面;否则,待用户配置并保存键盘映射配置文件后,保存安卓应用当前显示界面。3.根据权利要求1所述的显示方法,其特征在于,所述辅助提示窗口为无边框窗口。4.根据权利要求1所述的显示方法,其特征在于,所述步骤5中所述在辅助提示窗口内绘制目标框体后,若桌面系统中的安卓应用为多窗口显示,则监听当前显示窗口的焦点事件,若当前显示窗口失去焦点,则隐藏辅助提示窗口。5.根据权利要求1所述的显示方法,其特征在于,所述步骤3中在所述目标框体内绘制辅助提示文本后,执行以下步骤:步骤5.1、在安卓兼容环境中获取当前显示窗口内所有文本框内文本的位置作为显示界面文本位置,将显示界面文本位置发送至安卓应用显示单元;步...

【专利技术属性】
技术研发人员:赵旺林温研
申请(专利权)人:北京麟卓信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1