键盘扫描方法、装置、设备及存储介质与流程

未命名 07-22 阅读:67 评论:0
1.本公开涉及计算机
技术领域
:,尤其涉及一种键盘扫描方法、装置、设备及存储介质。
背景技术
::2.玩家在玩网络游戏时,一般经由键盘和鼠标来实时操作。服务器通过不断的获取客户端的操作,来将游戏信息处理后再同步至客户端。尤其针对实时对战类游戏而言,按键响应时间的长短会严重影响玩家在游戏中的体验感。3.现有技术中,有通过按键互换或者屏蔽系统功能按键的操作方式来改变检测键盘按键、响应按键操作的方案。但是这种方式仅是在数据的传输层或应用层上做优化,并没有改变底层按键扫描的方式,也即只改变了用户看到的现象,但对于按键的响应速度并没有真正的提升。技术实现要素:4.本公开提供了一种键盘扫描方法、装置、设备及存储介质,以至少解决现有技术中存在的以上技术问题。5.根据本公开的第一方面,提供了一种键盘扫描方法,所述方法包括:在接收到应用软件界面启动的情况下,获取所述应用软件的游戏配置文件;其中,所述游戏配置文件设有游戏按键清单,所述游戏按键清单包含用户在游戏过程中使用的游戏按键;根据所述游戏配置文件,生成第一按键矩阵,其中,所述第一按键矩阵包含所述游戏按键在全键盘矩阵内的位置信息;监测用户的第一按键指令,并根据指定条件生成第二按键矩阵;若所述第二按键矩阵内的按键位于所述第一按键矩阵的范围之内,则将所述第二按键矩阵确定为目标按键矩阵,并采用所述目标按键矩阵扫描按键指令,以获取用户在游戏过程中使用的目标按键,其中,所述目标按键矩阵的范围小于所述第一按键矩阵。6.在一可实施方式中,在所述采用所述目标按键矩阵扫描按键指令之后,还包括:若在所述目标按键矩阵内扫描不到有按键指令,则采用所述第一按键矩阵扫描按键指令;若在所述第一按键矩阵内扫描不到有按键指令,则采用所述全键盘矩阵扫描按键指令。7.在一可实施方式中,所述采用所述全键盘矩阵扫描按键指令之后,还包括:累计采用所述全键盘矩阵扫描按键指令的次数;若累计次数超过第一指定次数,则采用所述全键盘矩阵扫描按键指令,并监测用户的第二按键指令;当所述第二按键指令满足所述指定条件时,恢复采用所述目标按键矩阵扫描按键指令。8.在一可实施方式中,在所述根据指定条件生成第二按键矩阵之后,还包括:若所述第二按键矩阵内的按键位于所述第一按键矩阵的范围之外,则修正所述第二按键矩阵。9.在一可实施方式中,在所述采用所述第一按键矩阵扫描按键指令之后,还包括:若采用所述第一按键矩阵扫描按键指令,存在有第三按键指令,则监测用户的按键指令;若所述第三按键指令满足所述指定条件,则将所述第三按键指令对应的按键归类为所述目标按键矩阵之内。10.在一可实施方式中,所述监测用户的第一按键指令,并根据指定条件生成第二按键矩阵,包括:若存在有当前按键指令,其在第一指定时间内满足被监测到第二指定次数,则将所述当前按键指令确定为第二按键矩阵内的按键;若在第二指定时间内未更新所述第二按键矩阵,则确定生成所述第二按键矩阵。11.在一可实施方式中,在所述获取用户在游戏过程中使用的目标按键之后,还包括:若监测到所述应用软件界面关闭,则清除所述第一按键矩阵和所述目标按键矩阵,采用所述全键盘矩阵扫描按键指令。12.根据本公开的第二方面,提供了一种键盘扫描装置,所述装置包括:文件获取模块,用于在接收到应用软件界面启动的情况下,获取所述应用软件的游戏配置文件;其中,所述游戏配置文件设有游戏按键清单,所述游戏按键清单包含用户在游戏过程中使用的游戏按键;第一生成模块,用于根据所述游戏配置文件,生成第一按键矩阵,其中,所述第一按键矩阵包含所述游戏按键在全键盘矩阵内的位置信息;第二生成模块,用于监测用户的第一按键指令,并根据指定条件生成第二按键矩阵;按键获取模块,用于若所述第二按键矩阵内的按键位于所述第一按键矩阵的范围之内,则将所述第二按键矩阵确定为目标按键矩阵,并采用所述目标按键矩阵扫描按键指令,以获取用户在游戏过程中使用的目标按键,其中,所述目标按键矩阵的范围小于所述第一按键矩阵。13.在一可实施方式中,按键获取模块,具体用于:在所述采用所述目标按键矩阵扫描按键指令之后,若在所述目标按键矩阵内扫描不到有按键指令,则采用所述第一按键矩阵扫描按键指令;若在所述第一按键矩阵内扫描不到有按键指令,则采用所述全键盘矩阵扫描按键指令。14.在一可实施方式中,按键获取模块,还具体用于:在所述采用所述全键盘矩阵扫描按键指令之后,累计采用所述全键盘矩阵扫描按键指令的次数;若累计次数超过第一指定次数,则采用所述全键盘矩阵扫描按键指令,并监测用户的第二按键指令;当所述第二按键指令满足所述指定条件时,恢复采用所述目标按键矩阵扫描按键指令。15.在一可实施方式中,还包括:修正模块,用于在所述根据指定条件生成第二按键矩阵之后,若所述第二按键矩阵内的按键位于所述第一按键矩阵的范围之外,则修正所述第二按键矩阵。16.在一可实施方式中,按键获取模块,具体还用于:在所述采用所述第一按键矩阵扫描按键指令之后,若采用所述第一按键矩阵扫描按键指令,存在有第三按键指令,则监测用户的按键指令;若所述第三按键指令满足所述指定条件,则将所述第三按键指令对应的按键归类为所述目标按键矩阵之内。17.在一可实施方式中,第二生成模块,具体用于:若存在有当前按键指令,其在第一指定时间内满足被监测到第二指定次数,则将所述当前按键指令确定为第二按键矩阵内的按键;若在第二指定时间内未更新所述第二按键矩阵,则确定生成所述第二按键矩阵。18.在一可实施方式中,还包括:按键指令清除模块,用于在所述获取用户在游戏过程中使用的目标按键之后,若监测到所述应用软件界面关闭,则清除所述第一按键矩阵和所述目标按键矩阵,采用所述全键盘矩阵扫描按键指令。19.根据本公开的第三方面,提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开所述的方法。20.根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本公开所述的方法。21.本公开的键盘扫描方法、装置、设备及存储介质,通过在接收到应用软件界面启动的情况下,获取所述应用软件的游戏配置文件;其中,所述游戏配置文件设有游戏按键清单,所述游戏按键清单包含用户在游戏过程中使用的游戏按键;根据所述游戏配置文件,生成第一按键矩阵,其中,所述第一按键矩阵包含所述游戏按键在全键盘矩阵内的位置信息;监测用户的第一按键指令,并根据指定条件生成第二按键矩阵;若所述第二按键矩阵内的按键位于所述第一按键矩阵的范围之内,则将所述第二按键矩阵确定为目标按键矩阵,并采用所述目标按键矩阵扫描按键指令,以获取用户在游戏过程中使用的目标按键,其中,目标按键矩阵的范围小于第一按键矩阵,从而不仅可以大幅度提升了按键的响应速度,同时还可以增强用户在游戏中的体验感。22.应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。附图说明23.通过参考附图阅读下文的详细描述,本公开示例性实施方式的上述以及其他目的、特征和优点将变得易于理解。在附图中,以示例性而非限制性的方式示出了本公开的若干实施方式,其中:在附图中,相同或对应的标号表示相同或对应的部分。24.图1示出了本公开实施例一提供的一种键盘扫描方法的实现流程示意图;图2示出了本公开实施例一提供的一种示例性的扫描按键指令范围示意图;图3示出了本公开实施例一提供的一种全键盘内按键指令的结构示意图;图4示出了本公开实施例一提供的一种键盘扫描方法的框架流程示意图;图5示出了本公开实施例二提供的一种键盘扫描装置的结构示意图;图6示出了本公开实施例一种电子设备的组成结构示意图。具体实施方式25.为使本公开的目的、特征、优点能够更加的明显和易懂,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而非全部实施例。基于本公开中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。26.实施例一图1为本公开实施例一提供的一种键盘扫描方法的实现流程示意图,该方法可以由本公开实施例提供的键盘扫描装置来执行,该装置可采用软件和/或硬件的方式实现。该方法具体包括:s110、在接收到应用软件界面启动的情况下,获取应用软件的游戏配置文件。27.其中,游戏配置文件设有游戏按键清单,游戏按键清单包含用户在游戏过程中使用的游戏按键。应用软件界面,可以是用户进入游戏程序的初始界面,也即还未开始进入游戏场景前的界面。28.具体的,由于不同种类游戏所使用的游戏按键有所不同,因此游戏类应用软件均配有对应的游戏配置文件,不同游戏配置文件中列有游戏按键清单。在本实施例中,当用户启动游戏类应用软件时,系统可以检测到该游戏类的应用软件界面处于启动状态,随后本实施例为了获取操作时所需的游戏按键清单,需要先获取该应用软件的游戏配置文件,即cfg文件。29.s120、根据游戏配置文件,生成第一按键矩阵。30.其中,第一按键矩阵包含游戏相关按键在全键盘矩阵内的位置信息,记为g。第一按键矩阵可以包括用户在游戏场景中用到的游戏按键以及功能性按键,其中,游戏按键的使用频率较为频繁,为在游戏过程中所使用到的操作按键。而功能性按键的使用频率较低,仅在需要用到某类功能时才会使用,示例性的,退出按键esc。31.具体的,本实施例通过游戏按键配置文件可以解析出与其对应的游戏按键清单。然后将得到的该游戏按键清单发送至嵌入式控制器(embeddedcontroller,ec),由嵌入式控制器ec根据游戏按键在全键盘矩阵m中的位置,生成与其对应的游戏生效键盘矩阵g,即第一按键矩阵。其中,全键盘矩阵可以是键盘内所有按键的扫描范围,为全局扫描,记为m。32.s130、监测用户的第一按键指令,并根据指定条件生成第二按键矩阵。33.其中,第一按键指令可以是为了初步确定游戏按键范围而监测到的按键指令,用于生成第二按键矩阵。第二按键矩阵,可以是根据用户实际操作而初步确定的常用按键矩阵范围。指定条件可以是根据不同游戏特点而设定的条件。34.在本公开实施例中,监测用户的第一按键指令,并根据指定条件生成第二按键矩阵,包括:若存在有当前按键指令,其在第一指定时间内满足被监测到第二指定次数,则将当前按键指令确定为第二按键矩阵内的按键;若在第二指定时间内未更新第二按键矩阵,则确定生成第二按键矩阵。35.其中,第一指定时间可以是用于确定当前按键指令是否属于第二按键矩阵,而人为设定的监测时间。第二指定次数,可以是用于确定当前按键指令是否属于第二按键矩阵,而人为设定的、监测到的按键次数。第二指定时间,可以是用于确定生成第二按键矩阵的时间判断节点。36.具体的,本实施例可以通过监测按键指令的监测频次来判断是否是游戏过程中常用到的游戏按键。示例性的,若第一指令时间设置为3s,第二指定次数设置为5次,第二指定时间设置为10s,那么,若存在有当前按键指令,其在3s内满足被监测到5次或者超过5次,则将当前按键指令确定为第二按键矩阵内的按键,并且,若持续监测到10s未更新有新的按键,则可以确定生成第二按键矩阵。37.本实施例内的嵌入式控制器可以持续侦测用户的按键信息,根据用户使用的按键权重,来生成实际操作的按键矩阵范围,也即第二按键矩阵。同时根据监测用户的真正操作行为,能够更为准确的判断用户是否真正进入游戏模式。38.在本公开实施例中,在根据指定条件生成第二按键矩阵之后,还包括:若第二按键矩阵内的按键位于第一按键矩阵的范围之外,则修正第二按键矩阵。39.具体的,当用户进行按键操作时,很有可能会发生误触现象,从而导致第二按键矩阵内的某一个按键不属于第一按键矩阵的情况,也即并不属于该应用软件在游戏过程中常用到的游戏按键。如遇上述情况,本实施例也可以直接删除该类按键,以对第二按键矩阵进行修正。或者,本实施例可以再次监测用户的按键信息一段时间,来重新确定第二按键矩阵。40.s140、若第二按键矩阵内的按键位于第一按键矩阵的范围之内,则将第二按键矩阵确定为目标按键矩阵,并采用目标按键矩阵扫描按键指令,以获取用户在游戏过程中使用的目标按键。41.其中,目标按键矩阵的范围小于第一按键矩阵,记为t。目标按键矩阵是最终确定为该应用软件在游戏过程中常用的游戏按键,用户在游戏操作过程中,可以直接扫描目标按键矩阵,来缩小扫描按键指令的范围,以提高用户操作的响应速度。目标按键可以是用户实际上所按下的按键。42.图2为本公开实施例提供的一种示例性的扫描按键指令范围示意图。如图2所示,包括全键盘矩阵m、第一按键矩阵g和目标按键矩阵t,其扫描范围由大及小。具体的,键盘上物理按键的动作会生成硬件电路上的interrupt通知指令,当接收到该通知指令时,则可以进行键盘扫描检测来确定是哪个按键。在现有技术中,键盘扫描检测是为全键盘矩阵m上进行扫描。但是由于游戏类应用软件的特点,在游戏过程中,常用到的游戏按键个数有限,因此本实施例确定目标按键矩阵。如此,再接收到上述通知指令时,则可以直接在目标按键矩阵内扫描按键指令,以缩短响应时间,得到目标按键。43.图3为本公开实施例提供的一种全键盘内按键指令的结构示意图,包括表面按键示意图310和底层按键示意图320。为了方便理解,本实施例对检测按键的原理进行说明。在全键盘扫描模式下,首先嵌入式控制器在矩阵键盘y轴的18列依次输出高电平,然后按顺序侦测x轴的每一行电平信号(共计8行)。当用户按下按键时,x轴与y轴导通,x轴的输入信号为高电平;当未按下按键时,x轴与y轴不导通,x轴的输入信号为低电平。由此可见,在全键盘模式m下,扫描一次需要记录8×18次的扫描状态,才会将该轮的按键输出结果通知给系统。而为了能够提升游戏按键的响应时间,本实施例以目标按键矩阵包括“q,w,e,r,a,s,d,f”和数字“1,2,3,4,5,6”为例进行说明。本实施例不会扫描全键盘矩阵m,而是通过目标按键矩阵对按键指令进行扫描,进而获取用户在游戏过程中使用的目标按键。示例性的,本实施例中以字母“q,w,e,r,a,s,d,f”和数字“1,2,3,4,5,6”的游戏模式下键盘为例,这些游戏按键分布在x轴的x2,x3,x4,x5行以及y轴的y0,y1,y2,y4,y5列,本实施例通过目标按键矩阵进行游戏按键扫描时,仅需4×5次扫描操作便可将该轮扫描结果输出给系统。44.由此可见,全键盘矩阵的扫描方式需要8×18次才可完成该轮扫描,而本实施例通过4×5次扫描操作即可完成该轮扫描。因此,本实施例通过确定目标按键矩阵来扫描按键指令,改变了底层按键的扫描方式,可以大幅度缩短游戏按键扫描的范围,提升游戏按键的响应时间。45.在本公开实施例中,在采用目标按键矩阵扫描按键指令之后,还包括:若在目标按键矩阵内扫描不到有按键指令,则采用第一按键矩阵扫描按键指令;若在第一按键矩阵内扫描不到有按键指令,则采用全键盘矩阵扫描按键指令。46.具体的,目标按键矩阵为游戏过程中,用户常用的游戏按键,第一按键矩阵除了包含游戏按键之外,还包括功能性按键。因此,当在目标按键矩阵内扫描不到有按键指令时,可以采用第一按键矩阵扫描按键指令,来检测用户是否按下了功能性按键。在另一实施例中,为了提高扫描效率,由于本实施例先前已经有扫描目标按键矩阵,也即游戏按键,因此当扫描不到按键指令时,可以直接扫描第一按键矩阵内刨除目标按键矩阵之外的按键,也即直接扫描功能性按键。47.除此之外,用户在游戏过程中,还有可能会进行对话操作。当用户进行对话时,则不单是按下游戏按键,而是有可能会按到键盘内的任意按键。因此针对该类场景,本实施例可以先在目标按键矩阵进行扫描,扫描不到再采用第一按键矩阵进行扫描。当采用第一按键矩阵还未扫描到按键指令时,则采用全键盘矩阵的方式扫描按键指令,以获得用户按下的目标按键。48.在本公开实施例中,采用全键盘矩阵扫描按键指令之后,还包括:累计采用全键盘矩阵扫描按键指令的次数;若累计次数超过第一指定次数,则采用全键盘矩阵扫描按键指令,并监测用户的第二按键指令;当第二按键指令满足指定条件时,恢复采用目标按键矩阵扫描按键指令。49.其中,第一指定次数指的是人为设定的次数,可以设定为任意值。第二按键指令指的是采用全键盘矩阵扫描按键指令的次数超过第一指令次数后,所监测的按键指令。50.具体的,虽然用户在游戏操作中的游戏按键比较集中,但是用户在游戏中进行对话时,却会出现按键离散情况。因此,当用户在游戏过程中进行对话时,则会出现连续多次在全键盘矩阵内才能扫描到按键指令的情况。本实施例可以在采用全键盘矩阵的方式对按键指令进行扫描的同时,累计与其对应的按键指令次数,若得到的该类按键指令累计次数超过了人为预设的第一指定次数,则默认用户当下正在进行对话,因此采用全键盘矩阵扫描按键指令。同时,本实施例还会继续监测用户的第二按键指令。由于用户在对话结束时会恢复游戏操作,也即按键指令将恢复至较为集中的游戏按键状态,因此,本实施例可以通过持续监测第二按键指令,当第二按键指令满足上述指定条件,则默认用户恢复常规游戏操作,因此恢复采用目标按键矩阵扫描的方式来扫描按键指令。51.在本公开实施例中,在采用第一按键矩阵扫描按键指令之后,还包括:若采用第一按键矩阵扫描按键指令,存在有第三按键指令,则监测用户的按键指令;若第三按键指令满足指定条件,则将第三按键指令对应的按键归类为目标按键矩阵之内。52.其中,第三按键指令可以是游戏开始阶段不常用的游戏按键,但是在游戏后阶段会常用的游戏按键。53.具体的,由于本实施例是根据游戏按键清单以及用户的实际按键操作来生成的目标按键矩阵,但是在游戏过程中,很有可能存在第三按键指令,由于在游戏开始阶段并未使用到,导致其并未归类于目标按键矩阵之内,但是在游戏后续阶段却使用到第三按键指令,因此,针对该类情况,本实施例采用第一按键矩阵扫描按键指令时,若检测到第三按键指令,且对第三按键指令进行监测满足指定条件,则可以直接将该第三按键指令对应的按键纳入目标按键矩阵范围中,以更新目标按键矩阵。54.本实施例通过持续监测第三按键指令,当第三按键指令满足指定条件时,则可以直接将第三按键指令归类为目标按键矩阵,完善目标按键矩阵,以更为符合用户的实际操作情况。55.在本公开实施例中,在获取用户在游戏过程中使用的目标按键之后,还包括:若监测到应用软件界面关闭的情况下,则清除第一按键矩阵和目标按键矩阵,采用全键盘矩阵扫描按键指令。56.具体的,在本实施例中,当用户退出游戏时,系统可以监测到应用软件界面发生关闭,随后系统将通知嵌入式控制器对第一按键矩阵和目标按键矩阵进行全部清除,从而恢复常规模式,即采用全键盘矩阵的方式对按键指令进行扫描。57.本实施例可以灵活的进行全键盘矩阵和目标按键矩阵之间的切换,以适应不同情景的按键检测,并在游戏结束时,清除第一按键矩阵和目标按键矩阵。58.如图4所示,图4为本公开实施例提供的一种键盘扫描方法的框架流程示意图,其步骤补充如下:(1)启动游戏时,应用程序(application,app)检索对应游戏的按键cfg文件,解析出按键清单list1并通知ec,根据按键在全键盘矩阵m中的位置,ec生成游戏生效键盘矩阵g,其中游戏生效键盘矩阵g的扫描区间为(gy,gx);(2)ec持续侦测用户的按键信息的键值table1,根据用户使用的按键权重,生成实际操作的按键矩阵范围t,也即图4中所示的第二扫描区间(ty,tx);(3)判断矩阵t中按键是否在矩阵g中,若矩阵t不在矩阵g范围内,则返回步骤(2),并根据用户按键使用情况,持续修正矩阵t;若矩阵t在矩阵g范围内,则进入步骤(4)游戏模式;(4)先进入游戏时,先检测t,若t中检测不到该按键指令时,则再通过g来检测该按键指令,若g中检测不到该按键指令时,则通过全键盘矩阵m进行扫描。若ec在全键盘矩阵m内的扫描次数超出阈值时,则进行全键盘矩阵m扫描,并持续侦测用户的按键信息的键值table1;若ec在全键盘矩阵m内的扫描次数未超出阈值时,则继续进行目标键盘矩阵t扫描。59.(5)当用户按下超出矩阵g内的退出功能按键时,退出游戏模式,返回步骤(2);(6)系统下退出游戏时,app通知ec清除键盘矩阵g和矩阵t,从而恢复常规模式。60.本实施例可以在游戏过程中,优先采用目标键盘矩阵扫描按键指令,再者采用不同键盘矩阵来扫描按键指令,既可以大幅提升按键处理速度,也不会影响到游戏内低频按键的使用;此外,本实施例还可以根据用户当前运行的游戏种类,能够自动匹配与该游戏相对应的游戏模式下的常用游戏按键,也即目标键盘矩阵,能够自适应不同按键需求的应用软件。61.实施例二图5是本公开实施例提供的一种键盘扫描装置的结构示意图,该装置具体包括:文件获取模块510,用于在接收到应用软件界面启动的情况下,获取应用软件的游戏配置文件;其中,游戏配置文件设有游戏按键清单,游戏按键清单包含用户在游戏过程中使用的游戏按键;第一生成模块520,用于根据游戏配置文件,生成第一按键矩阵,其中,第一按键矩阵包含游戏按键在全键盘矩阵内的位置信息;第二生成模块530,用于监测用户的第一按键指令,并根据指定条件生成第二按键矩阵;按键获取模块540,用于若第二按键矩阵内的按键位于第一按键矩阵的范围之内,则将第二按键矩阵确定为目标按键矩阵,并采用目标按键矩阵扫描按键指令,以获取用户在游戏过程中使用的目标按键,其中,目标按键矩阵的范围小于第一按键矩阵。62.在一可实施方式中,按键获取模块540,具体用于:在采用目标按键矩阵扫描按键指令之后,若在目标按键矩阵内扫描不到有按键指令,则采用第一按键矩阵扫描按键指令;若在第一按键矩阵内扫描不到有按键指令,则采用全键盘矩阵扫描按键指令。63.在一可实施方式中,按键获取模块540,具体用于:在所述采用所述目标按键矩阵扫描按键指令之后,若在所述目标按键矩阵内扫描不到有按键指令,则采用所述第一按键矩阵扫描按键指令;若在所述第一按键矩阵内扫描不到有按键指令,则采用所述全键盘矩阵扫描按键指令。64.在一可实施方式中,按键获取模块540,还具体用于:在所述采用所述全键盘矩阵扫描按键指令之后,累计采用所述全键盘矩阵扫描按键指令的次数;若累计次数超过第一指定次数,则采用所述全键盘矩阵扫描按键指令,并监测用户的第二按键指令;当所述第二按键指令满足所述指定条件时,恢复采用所述目标按键矩阵扫描按键指令。65.在一可实施方式中,还包括:修正模块,用于在所述根据指定条件生成第二按键矩阵之后,若所述第二按键矩阵内的按键位于所述第一按键矩阵的范围之外,则修正所述第二按键矩阵。66.在一可实施方式中,按键获取模块540,具体还用于:在所述采用所述第一按键矩阵扫描按键指令之后,若采用所述第一按键矩阵扫描按键指令,存在有第三按键指令,则监测用户的按键指令;若所述第三按键指令满足所述指定条件,则将所述第三按键指令对应的按键归类为所述目标按键矩阵之内。67.在一可实施方式中,第二生成模块530,具体用于:若存在有当前按键指令,其在第一指定时间内满足被监测到第二指定次数,则将所述当前按键指令确定为第二按键矩阵内的按键;若在第二指定时间内未更新所述第二按键矩阵,则确定生成所述第二按键矩阵。68.在一可实施方式中,还包括:按键指令清除模块,用于在所述获取用户在游戏过程中使用的目标按键之后,若监测到所述应用软件界面关闭,则清除所述第一按键矩阵和所述目标按键矩阵,采用所述全键盘矩阵扫描按键指令。69.根据本公开的实施例,本公开还提供了一种电子设备和一种可读存储介质。70.图6示出了可以用来实施本公开的实施例的示例电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。71.如图6所示,设备600包括计算单元601,其可以根据存储在只读存储器(rom)602中的计算机程序或者从存储单元608加载到随机访问存储器(ram)603中的计算机程序,来执行各种适当的动作和处理。在ram603中,还可存储设备600操作所需的各种程序和数据。计算单元601、rom602以及ram603通过总线604彼此相连。输入/输出(i/o)接口605也连接至总线604。72.设备600中的多个部件连接至i/o接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。73.计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如键盘扫描方法。例如,在一些实施例中,键盘扫描方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由rom602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到ram603并由计算单元601执行时,可以执行上文描述的键盘扫描方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行键盘扫描方法。74.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、片上系统(soc)、复杂可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。75.用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。76.在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。77.为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。78.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。79.计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。80.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。81.此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本公开的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。82.以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以权利要求的保护范围为准。当前第1页12当前第1页12
技术特征:
1.一种键盘扫描方法,其特征在于,所述方法包括:在接收到应用软件界面启动的情况下,获取所述应用软件的游戏配置文件;其中,所述游戏配置文件设有游戏按键清单,所述游戏按键清单包含用户在游戏过程中使用的游戏按键;根据所述游戏配置文件,生成第一按键矩阵,其中,所述第一按键矩阵包含所述游戏按键在全键盘矩阵内的位置信息;监测用户的第一按键指令,并根据指定条件生成第二按键矩阵;若所述第二按键矩阵内的按键位于所述第一按键矩阵的范围之内,则将所述第二按键矩阵确定为目标按键矩阵,并采用所述目标按键矩阵扫描按键指令,以获取用户在游戏过程中使用的目标按键,其中,所述目标按键矩阵的范围小于所述第一按键矩阵。2.根据权利要求1所述的方法,其特征在于,在所述采用所述目标按键矩阵扫描按键指令之后,还包括:若在所述目标按键矩阵内扫描不到有按键指令,则采用所述第一按键矩阵扫描按键指令;若在所述第一按键矩阵内扫描不到有按键指令,则采用所述全键盘矩阵扫描按键指令。3.根据权利要求2所述的方法,其特征在于,所述采用所述全键盘矩阵扫描按键指令之后,还包括:累计采用所述全键盘矩阵扫描按键指令的次数;若累计次数超过第一指定次数,则采用所述全键盘矩阵扫描按键指令,并监测用户的第二按键指令;当所述第二按键指令满足所述指定条件时,恢复采用所述目标按键矩阵扫描按键指令。4.根据权利要求3所述的方法,其特征在于,在所述根据指定条件生成第二按键矩阵之后,还包括:若所述第二按键矩阵内的按键位于所述第一按键矩阵的范围之外,则修正所述第二按键矩阵。5.根据权利要求4所述的方法,其特征在于,在所述采用所述第一按键矩阵扫描按键指令之后,还包括:若采用所述第一按键矩阵扫描按键指令,存在有第三按键指令,则监测用户的按键指令;若所述第三按键指令满足所述指定条件,则将所述第三按键指令对应的按键归类为所述目标按键矩阵之内。6.根据权利要求1或4所述的方法,其特征在于,所述监测用户的第一按键指令,并根据指定条件生成第二按键矩阵,包括:若存在有当前按键指令,其在第一指定时间内满足被监测到第二指定次数,则将所述当前按键指令确定为第二按键矩阵内的按键;若在第二指定时间内未更新所述第二按键矩阵,则确定生成所述第二按键矩阵。7.根据权利要求6所述的方法,其特征在于,在所述获取用户在游戏过程中使用的目标
按键之后,还包括:若监测到所述应用软件界面关闭,则清除所述第一按键矩阵和所述目标按键矩阵,采用所述全键盘矩阵扫描按键指令。8.一种键盘扫描装置,其特征在于,所述装置包括:文件获取模块,用于在接收到应用软件界面启动的情况下,获取所述应用软件的游戏配置文件;其中,所述游戏配置文件设有游戏按键清单,所述游戏按键清单包含用户在游戏过程中使用的游戏按键;第一生成模块,用于根据所述游戏配置文件,生成第一按键矩阵,其中,所述第一按键矩阵包含所述游戏按键在全键盘矩阵内的位置信息;第二生成模块,用于监测用户的第一按键指令,并根据指定条件生成第二按键矩阵;按键获取模块,用于若所述第二按键矩阵内的按键位于所述第一按键矩阵的范围之内,则将所述第二按键矩阵确定为目标按键矩阵,并采用所述目标按键矩阵扫描按键指令,以获取用户在游戏过程中使用的目标按键,其中,所述目标按键矩阵的范围小于所述第一按键矩阵。9.一种电子设备,其特征在于,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-7中任一项所述的方法。10.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使计算机执行根据权利要求1-7中任一项所述的方法。

技术总结
本公开提供了一种键盘扫描方法、装置、设备及存储介质,通过在接收到应用软件界面启动的情况下,获取应用软件的游戏配置文件;其中,游戏配置文件设有游戏按键清单,游戏按键清单包含用户在游戏过程中使用的游戏按键;根据游戏配置文件,生成第一按键矩阵;监测用户的第一按键指令,并根据指定条件生成第二按键矩阵;若第二按键矩阵内的按键位于第一按键矩阵的范围之内,则将第二按键矩阵确定为目标按键矩阵,并采用目标按键矩阵扫描按键指令,以获取用户在游戏过程中使用的目标按键,从而不仅可以大幅度提升按键的响应速度,同时还可以增强用户在游戏中的体验感。强用户在游戏中的体验感。强用户在游戏中的体验感。


技术研发人员:曹存智 郑自汉 梅傲雪 杨天宝
受保护的技术使用者:合肥联宝信息技术有限公司
技术研发日:2023.06.09
技术公布日:2023/7/21
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐