CN109885245A - 应用控制方法、装置、终端设备及计算机可读取存储介质 - Google Patents
应用控制方法、装置、终端设备及计算机可读取存储介质 Download PDFInfo
- Publication number
- CN109885245A CN109885245A CN201910132812.4A CN201910132812A CN109885245A CN 109885245 A CN109885245 A CN 109885245A CN 201910132812 A CN201910132812 A CN 201910132812A CN 109885245 A CN109885245 A CN 109885245A
- Authority
- CN
- China
- Prior art keywords
- touch
- event
- application program
- application
- physical button
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- User Interface Of Digital Computer (AREA)
- Telephone Function (AREA)
Abstract
本申请公开了一种应用控制方法、装置、终端设备及计算机可读取存储介质,该方法包括:获取由实体按键触发的按压事件;在系统底层将按压事件更改为触摸屏的触摸事件,上报至框架层;在框架层判断触摸事件对应的当前应用程序是否为特定应用程序;在当前应用程序为特定应用程序时,基于预设的应用程序与触摸操作的映射关系,执行与触摸事件对应的操作。本申请可以通过将实体按键的按压事件在底层转换为触摸屏的触摸事件,并在框架层针对特定应用程序进行操作的适配,可避免事件上报冲突,提升用户的操作体验。
Description
技术领域
本申请涉及终端设备技术领域,更具体地,涉及一种应用控制方法、装置、终端设备及计算机可读取存储介质。
背景技术
目前,手机等移动终端设备的普及率越来越高,智能手机已成为人们出行的必备随身物品,随着移动互联网发展迅速,移动终端的游戏市场也越来越大。以手机为例,目前手机游戏越来越普及,但是手机端单调的操作方式在一定程度上影响了手机端游戏的发展。
目前手机在进行游戏时,可以根据游戏提供的在操作界面上显示的触控控件进行操作,热门的游戏应用比如刺激战场、穿越火线等,射击的情况非常普遍,用户至少需要进行人物位置、视角以及射击三个维度的控制,然而只能依靠原始的触控控件进行操作,使得操作体验不佳。因此要在手机等终端设备上进行可玩性更高的游戏,则需要丰富在终端设备上的操作方式。
发明内容
鉴于上述问题,本申请提出了一种应用控制方法、装置、终端设备及计算机可读取存储介质,可避免实体按键模拟触摸事件时的事件上报冲突,提升用户的操作体验。
第一方面,本申请实施例提供了一种应用控制方法,应用于具有实体按键与触摸屏的终端设备,该方法包括:获取由实体按键触发的按压事件;在系统底层将按压事件更改为触摸屏的触摸事件,上报至框架层;在框架层判断触摸事件对应的当前应用程序是否为特定应用程序;在当前应用程序为特定应用程序时,基于预设的应用程序与触摸操作的映射关系,执行与触摸事件对应的操作。
第二方面,本申请实施例提供了一种应用控制装置,应用于具有实体按键与触摸屏的终端设备,装置包括:检测模块,用于获取由实体按键触发的按压事件;转换模块,用于在系统底层将按压事件更改为触摸屏的触摸事件,上报至框架层;判断模块,用于在框架层判断触摸事件对应的当前应用程序是否为特定应用程序;执行模块,用于在当前应用程序为特定应用程序时,基于预设的应用程序与触摸操作的映射关系,执行与触摸事件对应的操作。
第三方面,本申请实施例提供了一种终端设备,其包括:存储器;一个或多个处理器,与存储器耦接;一个或多个程序,其中,一个或多个应用程序被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于执行如上述第一方面所述的方法。
第四方面,本申请实施例提供了一种计算机可读取存储介质,该计算机可读取存储介质中存储有程序代码,该程序代码可被处理器调用执行如上述第一方面所述的方法。
本申请实施例提供的应用控制方法、装置、终端设备及计算机可读取存储介质,可先获取由实体按键触发的按压事件,在系统底层将按压事件更改为触摸屏的触摸事件,上报至框架层,然后在框架层判断触摸事件对应的当前应用程序是否为特定应用程序,并在当前应用程序为特定应用程序时,基于预设的应用程序与触摸操作的映射关系,执行与触摸事件对应的操作。本申请实施例可通过将实体按键的按压事件在底层转换为触摸屏的触摸事件,并在框架层针对特定应用程序进行操作的适配,可防止来自不同设备的事件上报冲突,避免实体按键模拟触控操作中出现操作失效的问题,提升用户的操作体验。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了一种常见的3D手机游戏应用的操作界面;
图2示出了一种适用于本申请实施例的终端设备的结构示意图;
图3示出了本申请一个实施例提供的一种应用控制方法的流程示意图;
图4示出了本申请又一个实施例提供的一种应用控制方法的流程示意图;
图5示出了本申请又一个实施例中执行步骤S209、步骤S210的流程示意图;
图6示出了本申请又一个实施例中执行步骤S211、步骤S212的流程示意图;
图7示出了本申请又一个实施例中执行步骤S213、步骤S214的流程示意图;
图8示出了本申请实施例提供的应用控制装置的模块框图;
图9是本申请实施例的用于执行根据本申请实施例的应用控制方法的终端设备的框图;
图10是本申请实施例的用于保存或者携带实现根据本申请实施例的应用控制方法的程序代码的存储单元。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
随着移动终端设备技术的发展,手机等移动终端设备的普及率越来越高,智能手机已成为人们出行的必备随身物品,随着移动互联网发展迅速,移动终端的游戏市场也越来越大。
目前,手机在进行游戏时,可以根据游戏提供的在操作界面上显示的触控控件进行操作。
如图1所示,图1示出了一种常见的3D手机游戏应用的操作界面,其操作界面上至少具有人物移动、视角移动、交互(刺激战场、穿越火线等射击类游戏中为射击键,崩坏3等动作类游戏中为攻击键或技能键)这三个维度的触控控件供用户进行操作。作为一种方式,用户在可以在手机触摸屏上用于人物移动的操控控件对应位置,通过手指点击或滑动来控制游戏人物进行前进、后退、左移、右移等操作;可以在触摸屏上用于视角移动的操控控件对应位置,通过手指滑动来控制游戏视角进行上移、下移、左移、右移等操作;可以在触摸屏上用于交互的操控控件对应位置,通过手指点击来控制游戏人物进行射击、攻击、使用技能、使用道具等操作。
然而,发明人在研究中发现,由于目前的智能手机尺寸越来越大,为了手持手机的稳定性,大部分用户手持手机进行横屏操作的习惯通常为中指、无名指、小指在手机背侧,食指在手机背侧或靠在与触摸屏一侧相邻的侧边上,只依靠双手的拇指进行触摸屏的操作,这种情况下才能保持握持手机的稳定。而在实际的游戏操作中,用户一方面需要通过一根手指进行视角移动来锁定目标(例如通过视角移动将图1中界面中心的准星移动目标上),并通过另一根手指点击交互键进行射击等操作,另一方面还需要控制人物移动来躲避对方的攻击,然而用户在仅用两根手指进行操作的前提下,无法实现在锁定移动目标进行攻击的同时,控制人物进行移动躲避。尽管部分玩家为了克服两根手指操作的局限性,开发出了三指、四指等操作方式,但是这些操作方式违反人手部的自然姿态,长期使用会造成用户手部疲劳甚至引发病患。这些问题导致了目前的手机游戏应用操作体验不佳,用户的操作门槛较高,在一定程度上也影响了手机端游戏的发展。因此,要在手机等终端设备上进行可玩性更高的游戏,则需要丰富在终端设备上的操作方式。
为了解决上述的问题,发明人经过研究,提出了本申请实施例中的应用控制方法、装置、终端设备及计算机可读取存储介质。
为便于更好的理解本申请实施例提供的应用控制方法,下面先对适用于本申请实施例的应用环境进行描述。
请参阅图2,图2示出了一种适用于本申请实施例的终端设备100的结构示意图。
如图2所示,终端设备100包括壳体11、设置于壳体一侧表面的触摸屏12以及设置于壳体11侧边上的实体按键,其中设置在壳体11侧边上的实体按键可以包括电源键13、音量键14等实体按键。
在一些实施方式中,为了提高操作的便利性,如图2所示,还可以在壳体11上增加额外的侧边实体按键15,以通过该额外的侧边实体按键15实现本申请实施例提供的应用控制方法中的模拟触摸事件的功能。
可以理解的是,终端设备100上的设置于壳体11侧边上的实体按键,无论是原本具有其他功能的实体按键还是额外增加的实体按键,均可用于实现本申请实施例提供的应用控制方法中的模拟触摸事件的功能。作为一种方式,原本具有其他功能的实体按键(如电源键13、音量键14等),可以仅在特定应用程序运行时实现模拟触摸事件的功能,在特定应用程序运行结束时即可恢复其原本的功能。
下面将通过具体实施例对本申请实施例提供的应用控制方法、装置、终端设备以及存储介质进行详细说明。
请参阅图3,图3示出了本申请一个实施例提供的应用控制方法的流程示意图。本实施例提供的应用控制方法可以适用于具有实体按键与触摸屏的终端设备,终端设备可以是智能手机、平板电脑、穿戴式智能终端等便携式终端设备。应用控制方法可先获取由实体按键触发的按压事件,在系统底层将按压事件更改为触摸屏的触摸事件,上报至框架层,然后在框架层判断触摸事件对应的当前应用程序是否为特定应用程序,并在当前应用程序为特定应用程序时,基于预设的应用程序与触摸操作的映射关系,执行与触摸事件对应的操作,可以通过将实体按键的按压事件在底层转换为触摸屏的触摸事件,并在框架层针对特定应用程序进行操作的适配,可防止来自不同设备的事件上报冲突,避免实体按键模拟触控操作中出现操作失效的问题,提升用户的操作体验。在具体的实施例中,应用控制方法可应用于如图8所示的应用控制装置300以及图9所示的终端设备100,应用控制方法用于改善用户使用终端设备的操作体验。下面将针对图3所示的流程进行详细的阐述。上述的应用控制方法具体地可以包括以下步骤:
步骤S101:获取由实体按键触发的按压事件。
本实施例中,实体按键可以是终端设备上的音量键、电源键等区别于触摸屏上的虚拟按键的实体按键。在一些实施方式中,实体按键还可以包括额外增加的没有原本功能的实体按键(如图2所示的终端设备100中的额外的侧边实体按键15)。
本实施例中,当实体按键按下之后,终端设备的按键模组中的传感器会生成一个按压信号发送至应用处理器,应用处理器接收到该按压信号后会在操作系统底层创建一个对应该按压信号的按压事件(在Android操作系统中为key event),并经过处理上报至框架层最终实现对应用程序的控制。
为便于对本实施例的理解,在此简单介绍一种适用于本实施例的Android系统架构(iOS等系统架构与其类似)。Android的系统架构大致可以分为四层:Linux内核层、系统运行库层、应用程序框架层和应用层。其中,Linux内核层为Android设备的各种硬件提供了底层的驱动(iOS系统为UNIX内核),如按键、显示、音频、照相机、蓝牙、Wi-Fi、电源管理等等,因此内核层也称为操作系统的底层,终端设备的操作系统可在底层上实现实体按键的检测。系统运行库层主要通过一些C/C++库来为Android提供主要的特性支持,如SQLite提供了数据库的支持,OpenGL|ES库提供了3D绘图的支持,WebKit库提供了浏览器内核的支持等等,系统库是应用程序框架的支撑,是连接应用程序框架层与Linux内核层的重要纽带。应用程序框架层(简称框架层)主要提供了构建应用程序时可能用到的各种API(Application Programming Interface,应用程序编程接口),以实现对在应用层上运行的应用程序的访问和控制。与终端设备的操作系统架构相关的技术目前已较为成熟,在此不再赘述。
步骤S102:在系统底层将按压事件更改为触摸屏的触摸事件,上报至框架层。
发明人在研究中发现,在终端设备的操作系统的固有流程中,系统在检测到按压事件后,会直接将按键事件传递给应用以实现对应用程序的控制(例如检测到音量键按压后传递对应的按压事件给音量调节应用实现对音量的调节),如果想通过实体按键来模拟触摸屏的触控操作,由于实体按键与触摸屏并不是同一个设备,系统底层会按照固有流程传递按压事件到框架层,框架层在接收到按压事件后会根据该按压事件注册相应的触摸事件(在Android操作系统中为motion event),如果此时真正的来自触摸屏的触摸事件到来,在两个触摸事件均未up前(即实体按键处于按压状态还未弹起,或触摸屏上用户的手指未离开屏幕时),会存在两个来自不同设备的down事件(在Android操作系统中为MotionEvent.ACTION_DOWN),此时就会导致报点冲突,系统会自动生成一个取消指令(在Android操作系统中为MotionEvent.ACTION_CANCEL)将这两个触摸事件中的至少一个删除,反映在用户的实际操作体验上,即为实体按键与触摸屏触发的其中至少一个操作失效。例如,在射击类游戏中,用户通过触摸屏控制人物移动,并通过实体按键控制人物射击,由于实体按键模拟的触摸事件与触摸屏触发的真实触摸事件发生报点冲突,导致人物突然停止移动,或突然停止开火,导致用户无法实现移动射击的操作,用户操作体验不佳。
为了解决上述的问题,发明人经过研究,发现通过在系统底层就对由实体按键触发的按压事件进行转换,将其更改为与触摸屏触摸类似的触摸事件上报给框架层,而框架层在接收到经过转换的触摸事件后会认为该触摸事件为触摸屏触发的触摸事件,即可避免多指事件,防止出现两个来自不同设备的事件上报冲突。
因此,在本实施例中,并非是由框架层直接处理按压事件,而是通过在系统底层将按压事件更改为触摸屏的触摸事件,上报至框架层,框架层只需要将转换后的触摸事件进行处理,即可避免固有流程中实体按键模拟触摸事件时可能发生的的事件上报冲突,提升用户的操作体验。
步骤S103:在框架层判断触摸事件对应的当前应用程序是否为特定应用程序。
本实施例中,框架层在接收到底层上报的经过转换的触摸事件后,即可根据触摸事件针对不同的应用程序进行对应的处理。
本实施例中,当前应用程序,可以是在触摸事件发生时,在终端设备的系统前台运行的应用程序,该当前应用程序可以在终端设备的人机交互界面(如触摸屏)上显示对应的图像或界面,以供用户进行观看或操作。
本实施例中,特定应用程序,可以是预先设置的需要通过实体按键模拟触摸事件进行控制的应用程序,例如游戏类应用。在一些实施方式中,终端设备可以在预先建立的特定应用程序列表中进行检索,若当前应用程序在列表中,即可判定当前应用程序为特定应用程序。作为一种方式,特定应用程序列表可以是由系统自动设置的,也可以是由用户自定义设置的。
本实施例中,在当前应用程序为特定应用程序时,可以进行步骤S104。
步骤S104:基于预设的应用程序与触摸操作的映射关系,执行与触摸事件对应的操作。
本实施例中,预设的应用程序与触摸操作的映射关系,可以是预先建立的应用程序与实体按键需要在该应用程序中模拟的触摸操作的对应关系。例如,对于射击类游戏应用程序,其对应的实体按键需要在该应用程序中模拟的触摸操作,可以是点击触摸屏上的射击键;对于王者荣耀等MOBA类游戏应用程序,其对应的实体按键需要在该应用程序中模拟的触摸操作,可以是点击触摸屏上的小地图中的固定位置,以将视角切换至固定位置。可以理解的是,根据用户的需求不同,不同的应用程序与同一实体按键模拟的触摸操作的映射关系可以是不同的,对于不同的用户,同一应用程序与同一实体按键模拟的触摸操作的映射关系也可以是不同的,在一些实施方式中,应用程序与触摸操作的映射关系可以供用户进行设定,也可以由应用程序开发方进行设定,在此不作限定。
可以理解的是,通过本实施例提供的应用控制方法,用户在终端设备上打开特定应用程序,并按压终端设备上且已建立该应用程序与触摸操作的映射关系的实体按键后,该应用程序内即可执行与该实体按键绑定的触摸事件对应的操作,可在双手拇指进行触摸屏操作的同时,通过其他手指例如食指按压实体按键进行模拟额外的触摸操作,实现操作体验上的优化。
本申请一个实施例提供的应用控制方法,可通过将实体按键的按压事件在底层转换为触摸屏的触摸事件,并在框架层针对特定应用程序进行操作的适配,可防止来自不同设备的事件上报冲突,避免实体按键模拟触控操作中出现操作失效的问题,提升用户的操作体验。
请参阅图4,图4示出了本申请又一个实施例提供的应用控制方法的流程示意图。下面将针对图4所示的流程进行详细的阐述。上述的应用控制方法具体地可以包括以下步骤:
步骤S201:获取由实体按键触发的按压信号。
本实施例中,当实体按键被按下之后,终端设备内的按压传感器即可生成按压信号,发送给处理器。
步骤S202:判断实体按键是否为特定实体按键。
终端设备的处理器中运行有操作系统,在接收到按压信号后,操作系统底层可根据该按压信号识别出该按压信号具体是由哪个实体按键触发的,并由此判断当前触发该按压信号的实体按键是否是特定实体按键。
可以理解的是,终端设备上通常具有多个实体按键,例如音量键、电源键、额外增加的侧边实体按键等,若用户想在应用程序运行时,既能够保持部分实体按键原有的按键功能(例如保持音量键功能以在应用程序运行时方便调节应用程序内的音量),又能够通过部分实体按键进行触摸操作的模拟,此时即可设置部分实体按键进行触摸操作模拟,这些设置用于触摸操作模拟的实体按键即为特定实体按键。若按压信号来自特定实体按键,则进行后续按压事件转换的操作;若按压信号来自于保持有原有功能的其他按键,则直接进行固有流程实现该实体按键原有的功能即可。
本实施例中,在实体按键为特定实体按键时,可进行步骤S203。
步骤S203:根据按压信号生成对应的按压事件。
本实施例中,系统底层在确认触发按压信号的实体按键为特定实体按键后,即可根据该按压信号生成对应的用于事件转换的按压事件,递送至后续的事件转换流程。
可以理解的是,在一些实施方式中,还可以先根据按压信号生成对应的按压事件,并根据按压事件判断是否为特定实体按键触发,若是则对该按压事件进行转换,若不是则执行固有流程,即步骤S203还可以在步骤S202之前进行。
本实施例中,系统底层在接收到特定实体按键触发的按压事件之后,可以进行将按压事件更改为触摸屏的触摸事件。作为一种方式,在对按压事件进行转换之前,可以先进行步骤S204,确定该按压事件对应的触摸事件类型。
步骤S204:获取实体按键与触摸屏的触摸事件类型的映射关系。
本实施例中,实体按键与触摸屏的触摸事件类型的映射关系,即为用户需要的按压该实体按键模拟的触摸操作的操作类型。
本实施例中,触摸事件类型包括点击、滑动中的至少一种。(在Android操作系统中分别为MotionEvent.ACTION_DOWN和MotionEvent.ACTION_MOVE)
在一些实施方式中,触摸事件类型还可以包括更为多样化的事件类型,例如松开某个触点(MotionEvent.ACTION_UP),在当前触点还未抬起时按下其他触点(MotionEvent.ACTION_POINTER_DOWN),在多个触点按下时松开其中一个触点(MotionEvent.ACTION_POINTER_UP)等等。可以理解的是,实体按键可以绑定应用程序中支持的任意通过触摸屏实现的触摸操作,在此不作限定。
作为一种方式,实体按键与触摸屏的触摸事件类型的映射关系,可以预先以索引的方式存储在终端设备本地的存储器中,终端设备只需将获取的按压事件在本地进行检索,即可将按压事件转换为对应类型的触摸事件。
步骤S205:基于实体按键与触摸屏的触摸事件类型的映射关系,在系统底层将按压事件更改为触摸屏的对应类型的触摸事件,上报至框架层。
本实施例中,对于不同的实体按键,其触发的按压事件是不同的,而其绑定的触摸事件类型可能是相同或不同的;对于同一实体按键,其触发的按压事件可能是固定的,但其按压事件在不同的应用程序中对应模拟的触摸事件类型可能是不同的。本实施例不作限定。
步骤S206:在框架层判断触摸事件对应的当前应用程序是否为特定应用程序。
本实施例中,在当前应用程序为特定应用程序时,可以进行步骤S207。
步骤S207:基于预设的应用程序与触摸操作的映射关系,确定触摸事件在当前应用程序的操作界面中对应的触摸坐标。
本实施例中,预设的应用程序与触摸操作的映射关系,可以通过应用程序与触摸事件对应在触摸屏上的触摸坐标的形式表现。
步骤S208:根据触摸坐标,执行与触摸事件对应的操作。
本实施例中,在获取当前应用程序对应的实体按键模拟触摸操作在触摸屏上的触摸坐标后,即可执行与该触摸事件对应的操作。
例如,对某一射击类游戏应用程序,其对应的实体按键模拟的触摸操作为点击触摸屏上显示的操作界面上的射击键操作控件,且该射击键操作控件的坐标区间为[80,30]到[120,70]之间的区域,该区域的中心触点坐标为[100,50],此时,实体按键模拟的触摸事件在当前应用程序的操作界面中对应的触摸坐标即为[100,50](以中心点为例,还可以是控件区域内的其他触点),当用户按压特定的实体按键后,即可实现在触摸屏上点击射击键操作控件相同的操作。
本实施例中,进一步的,如图5所示,用户还可以对实体按键需要模拟的触摸操作进行设定。
步骤S209:获取对应于至少一个实体按键的功能设置指令。
本实施例中,还可以在系统或应用程序内的设置页面为用户提供实体按键功能自定义的功能,当用户点击自定义实体按键功能选项后,系统即可获取对应于至少一个实体按键的功能设置指令。
可以理解的是,用户还可以同时对多个实体按键进行模拟触摸操作功能的设定(例如用户需要在不同位置处的多个模拟射击键的实体按键)。
步骤S210:根据作用于触摸屏的对应当前应用程序的触摸操作,建立当前应用程序与触摸操作的映射关系。
本实施例中,作为一种方式,用户可以在点击自定义实体按键功能选项后,在触摸屏上进行需要模拟的触摸操作,系统可以将接收到功能设置指令之后紧接着获取的触摸屏上的触摸操作指令作为实体按键需要模拟的触摸操作,并同时获取该触摸操作的触摸坐标和触摸事件类型,将当前应用程序与该触摸操作进行绑定,即建立当前应用程序与触摸操作的映射关系,完成实体按键模拟触摸操作的功能设定。
上述的建立映射关系的方式仅为一种可选的方式,可以理解的是,还可以有其他的方式供用户进行应用程序与实体按键模拟触摸操作的绑定,本实施例对此不作限定。
作为一种方式,如图6所示,终端设备还可以自动建立特定应用程序列表。
步骤S211:获取本地安装的应用程序信息。
本实施例中,应用程序信息可以包括终端设备本地已安装应用的各项特征信息,例如应用名称、应用类型、应用大小等。
步骤S212:根据应用程序信息,将本地安装的特定类型的应用程序添加入特定应用程序列表。
本实施例中,终端设备可以根据系统内的应用程序信息,将可能有实体按键模拟触摸操作需求的应用程序筛选出来,并自动建立特定应用程序列表。可以理解的是,用户还可以自行对特定应用程序列表中的应用程序进行添加或删除。
在一些实施方式中,如图7所示,在经过步骤S206确定当前应用程序为特定应用程序后,还可以进行如下操作。
步骤S213:判断是否已建立当前应用程序与触摸操作的映射关系。
本实施例中,在未建立当前应用程序与触摸操作的映射关系时,可进行步骤S214;在已建立当前应用程序与触摸操作的映射关系时,可进行步骤S207。
步骤S214:在检测到当前应用程序运行至特定阶段后,提示建立当前应用程序与触摸操作的映射关系。
本实施例中,若系统检测到在未建立实体按键模拟触摸操作的应用程序运行过程中,用户点击了实体按键,可以在当前应用程序运行至特定阶段后,提示用户对当前应用程序对应的实体按键模拟触摸操作进行设置。
可以理解的是,在当前应用程序已经被分为特定应用程序的前提下,用户对该应用程序可能有实体按键模拟触摸操作的需求,用户可以应用程序运行时点击特定实体按键,以对该实体按键在当前应用程序中需要模拟的触摸操作进行设置。但是如果是用户在应用程序运行过程中的误操作,例如在游戏对局进行中用户误点击了特定实体按键,那么用户不想在此时被打扰,系统可以等待至游戏对局结束或应用程序关闭后再提示用户对该应用程序对应的实体按键模拟触摸操作进行设置,为用户带来更为人性化的操作体验。
本申请又一个实施例提供的应用控制方法,相较于图3所示的方法,本实施例还进一步对触发按压信号的实体按键进行特定筛选,且可模拟不同类型模拟的触摸事件,可供用户自定义实体按键功能,自动建立特定应用程序列表,提示用户进行触摸操作模拟的映射关系创建等,丰富了本方案的应用场景,实现了更为智能化的应用控制,能够有效提升用户的使用体验。
请参阅图8,图8示出了本申请一个实施例提供的应用控制装置300的模块框图。该应用控制装置300应用于图9所示的终端设备,下面将针对图8所示的模块框图进行阐述,应用控制装置300包括:检测模块310、转换模块320、判断模块330以及执行模块340,其中:
检测模块310,用于获取由实体按键触发的按压事件。进一步的,检测模块310包括:
信号获取单元,用于获取由实体按键触发的按压信号。
按键判断单元,用于判断实体按键是否为特定实体按键。
事件生成单元,用于在实体按键为特定实体按键时,根据按压信号生成对应的按压事件。
转换模块320,用于在系统底层将按压事件更改为触摸屏的触摸事件,上报至框架层。进一步的,转换模块320包括:
转换单元,用于基于实体按键与触摸屏的触摸事件类型的映射关系,在系统底层将按压事件更改为触摸屏的对应类型的触摸事件,上报至框架层。
判断模块330,用于在框架层判断触摸事件对应的当前应用程序是否为特定应用程序。
执行模块340,用于在当前应用程序为特定应用程序时,基于预设的应用程序与触摸操作的映射关系,执行与触摸事件对应的操作。进一步的,执行模块340包括:
坐标单元,用于基于预设的应用程序与触摸操作的映射关系,确定触摸事件在当前应用程序的操作界面中对应的触摸坐标。
执行单元,用于根据触摸坐标,执行与触摸事件对应的操作。
在一些实施方式中,进一步的,应用控制装置300还包括:
类型获取模块,用于获取实体按键与触摸屏的触摸事件类型的映射关系,触摸事件类型包括点击、滑动中的至少一种。
指令获取模块,用于获取对应于至少一个实体按键的功能设置指令。
功能设置模块,用于根据作用于触摸屏的对应当前应用程序的触摸操作,建立当前应用程序与触摸操作的映射关系。
信息获取模块,用于获取本地安装的应用程序信息。
列表创建模块,用于根据应用程序信息,将本地安装的特定类型的应用程序添加入特定应用程序列表。
映射关系检测模块,用于在当前应用程序为特定应用程序时,判断是否已建立当前应用程序与触摸操作的映射关系。
提示模块,用于在未建立当前应用程序与触摸操作的映射关系时,在检测到当前应用程序运行至特定阶段后,提示建立当前应用程序与触摸操作的映射关系。
本申请一个实施例提供的应用控制装置,可通过将实体按键的按压事件在底层转换为触摸屏的触摸事件,并在框架层针对特定应用程序进行操作的适配,可防止来自不同设备的事件上报冲突,避免实体按键模拟触控操作中出现操作失效的问题,提升用户的操作体验。
请参阅图9,其示出了本申请实施例提供的一种终端设备100的结构框图。该终端设备100可以是智能手机、平板电脑、电子书等能够运行应用程序的终端设备。本申请中的终端设备100可以包括触摸屏模块110、实体按键模块120以及控制模块130,控制模块130分别与触摸屏模块110以及实体按键模块120连接。其中,实体按键模块120可以包括电源键、音量键、额外的实体按键等。
本实施例中,控制模块130可以包括一个或多个处理器、存储器以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器中并被配置为由一个或多个处理器执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器可以包括一个或者多个处理核。处理器利用各种接口和线路连接整个终端设备100内的各个部分,通过运行或执行存储在存储器内的指令、程序、代码集或指令集,以及调用存储在存储器内的数据,执行终端设备100的各种功能和处理数据。可选地,处理器可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器中,单独通过一块通信芯片进行实现。本实施例中,控制模块130的处理器上可以集成有应用处理器(Application Processor,AP),其负责处理终端设备100系统中运行的应用程序,例如游戏、网页等应用。
存储器可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器可用于存储指令、程序、代码、代码集或指令集。存储器可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端设备100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
本实施例中,实体按键模块120可以包括至少一个按压传感器。当实体按键模块120检测到实体按键被按压时,可以生成对应的按压信号发送给控制模块130。控制模块130可根据实体按键模块120发送的按压信号在系统底层创建按压事件,并将按压事件转换为模拟触摸屏模块110的触摸事件,上报至框架层,以实现对应用程序的控制。
请参阅图10,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质200中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质200可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质200包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质200具有执行上述方法中的任何方法步骤的程序代码210的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码210可以例如以适当形式进行压缩。
综上所述,本申请实施例提供的应用控制方法、装置、终端设备及计算机可读取存储介质,可先获取由实体按键触发的按压事件,在系统底层将按压事件更改为触摸屏的触摸事件,上报至框架层,然后在框架层判断触摸事件对应的当前应用程序是否为特定应用程序,并在当前应用程序为特定应用程序时,基于预设的应用程序与触摸操作的映射关系,执行与触摸事件对应的操作。本申请实施例可通过将实体按键的按压事件在底层转换为触摸屏的触摸事件,并在框架层针对特定应用程序进行操作的适配,可防止来自不同设备的事件上报冲突,避免实体按键模拟触控操作中出现操作失效的问题,提升用户的操作体验。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种应用控制方法,其特征在于,应用于具有实体按键与触摸屏的终端设备,所述方法包括:
获取由所述实体按键触发的按压事件;
在系统底层将所述按压事件更改为所述触摸屏的触摸事件,上报至框架层;
在所述框架层判断所述触摸事件对应的当前应用程序是否为特定应用程序;
在当前应用程序为特定应用程序时,基于预设的应用程序与触摸操作的映射关系,执行与所述触摸事件对应的操作。
2.根据权利要求1所述的方法,其特征在于,所述获取由所述实体按键触发的按压事件,包括:
获取由实体按键触发的按压信号;
判断所述实体按键是否为特定实体按键;
在所述实体按键为特定实体按键时,根据所述按压信号生成对应的按压事件。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述实体按键与所述触摸屏的触摸事件类型的映射关系,所述触摸事件类型包括点击、滑动中的至少一种;
所述在系统底层将所述按压事件更改为所述触摸屏的触摸事件,上报至框架层,包括:
基于所述实体按键与所述触摸屏的触摸事件类型的映射关系,在系统底层将所述按压事件更改为所述触摸屏的对应类型的触摸事件,上报至框架层。
4.根据权利要求1所述的方法,其特征在于,所述基于预设的应用程序与触摸操作的映射关系,执行与所述触摸事件对应的操作,包括:
基于预设的应用程序与触摸操作的映射关系,确定所述触摸事件在所述当前应用程序的操作界面中对应的触摸坐标;
根据所述触摸坐标,执行与所述触摸事件对应的操作。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取对应于至少一个实体按键的功能设置指令;
根据作用于所述触摸屏的对应当前应用程序的触摸操作,建立所述当前应用程序与触摸操作的映射关系。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取本地安装的应用程序信息;
根据所述应用程序信息,将本地安装的特定类型的应用程序添加入特定应用程序列表。
7.根据权利要求1所述的方法,其特征在于,在当前应用程序为特定应用程序时,所述方法还包括:
判断是否已建立所述当前应用程序与触摸操作的映射关系;
在未建立所述当前应用程序与触摸操作的映射关系时,在检测到所述当前应用程序运行至特定阶段后,提示建立所述当前应用程序与触摸操作的映射关系。
8.一种应用控制装置,其特征在于,应用于具有实体按键与触摸屏的终端设备,所述装置包括:
检测模块,用于获取由所述实体按键触发的按压事件;
转换模块,用于在系统底层将所述按压事件更改为所述触摸屏的触摸事件,上报至框架层;
判断模块,用于在所述框架层判断所述触摸事件对应的当前应用程序是否为特定应用程序;
执行模块,用于在当前应用程序为特定应用程序时,基于预设的应用程序与触摸操作的映射关系,执行与所述触摸事件对应的操作。
9.一种终端设备,其特征在于,包括:
存储器;
一个或多个处理器,与所述存储器耦接;
一个或多个程序,其中,所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-7任一项所述的方法。
10.一种计算机可读取存储介质,其特征在于,所述计算机可读取存储介质中存储有程序代码,所述程序代码可被处理器调用执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910132812.4A CN109885245B (zh) | 2019-02-21 | 2019-02-21 | 应用控制方法、装置、终端设备及计算机可读取存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910132812.4A CN109885245B (zh) | 2019-02-21 | 2019-02-21 | 应用控制方法、装置、终端设备及计算机可读取存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109885245A true CN109885245A (zh) | 2019-06-14 |
CN109885245B CN109885245B (zh) | 2021-04-09 |
Family
ID=66929003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910132812.4A Active CN109885245B (zh) | 2019-02-21 | 2019-02-21 | 应用控制方法、装置、终端设备及计算机可读取存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109885245B (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110688049A (zh) * | 2019-08-30 | 2020-01-14 | 华为技术有限公司 | 触控方法、装置、终端设备和存储介质 |
CN111352790A (zh) * | 2020-02-20 | 2020-06-30 | Oppo(重庆)智能科技有限公司 | 输入事件上报的测试方法、装置、移动终端以及存储介质 |
CN111556354A (zh) * | 2020-04-22 | 2020-08-18 | 深圳Tcl数字技术有限公司 | 全局界面显示方法、电视及计算机可读存储介质 |
CN111949188A (zh) * | 2020-08-12 | 2020-11-17 | 上海众链科技有限公司 | 用于智能终端的操作控制映射系统、方法及计算机可读存储介质 |
CN112052052A (zh) * | 2020-09-24 | 2020-12-08 | 深圳创维-Rgb电子有限公司 | 按键值的触控方法、装置、终端和存储介质 |
CN112256192A (zh) * | 2020-10-20 | 2021-01-22 | 北京字节跳动网络技术有限公司 | 电子设备的控制方法、装置、终端和存储介质 |
CN112764564A (zh) * | 2019-10-21 | 2021-05-07 | Oppo广东移动通信有限公司 | 触控信息的处理方法、装置、存储介质及电子设备 |
CN114442820A (zh) * | 2020-10-30 | 2022-05-06 | 深圳Tcl新技术有限公司 | 一种基于激光交互的控制方法和计算机设备 |
CN114546549A (zh) * | 2022-01-24 | 2022-05-27 | 中国第一汽车股份有限公司 | 应用程序的控制方法、手势处理装置、智能终端及车辆 |
CN114764270A (zh) * | 2021-07-29 | 2022-07-19 | 华为技术有限公司 | 输入转换方法、电子设备和可读介质 |
WO2022166772A1 (zh) * | 2021-02-02 | 2022-08-11 | 展讯通信(天津)有限公司 | 一种应用程序切换方法及装置 |
CN114968053A (zh) * | 2022-04-13 | 2022-08-30 | Oppo广东移动通信有限公司 | 操作处理方法及装置、计算机可读存储介质和电子设备 |
CN115237328A (zh) * | 2021-04-25 | 2022-10-25 | 北京小米移动软件有限公司 | 移动终端的控制方法、装置、移动终端及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2194453A1 (en) * | 2008-11-28 | 2010-06-09 | HTC Corporation | Portable electronic device and method for waking up the same from sleep mode through touch screen |
US20120062465A1 (en) * | 2010-09-15 | 2012-03-15 | Spetalnick Jeffrey R | Methods of and systems for reducing keyboard data entry errors |
CN103092448A (zh) * | 2013-01-22 | 2013-05-08 | 上海艾为电子技术有限公司 | 触摸数据处理方法 |
CN103677612A (zh) * | 2012-09-22 | 2014-03-26 | 深圳清华大学研究院 | 电子设备控制装置及电子设备控制方法 |
CN103729065A (zh) * | 2013-12-17 | 2014-04-16 | 深圳市慧为智能科技有限公司 | 触控操作映射到实体按键的系统及方法 |
CN109117061A (zh) * | 2018-07-02 | 2019-01-01 | 南昌黑鲨科技有限公司 | 一种输入操作处理方法、处理装置及智能终端 |
-
2019
- 2019-02-21 CN CN201910132812.4A patent/CN109885245B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2194453A1 (en) * | 2008-11-28 | 2010-06-09 | HTC Corporation | Portable electronic device and method for waking up the same from sleep mode through touch screen |
US20120062465A1 (en) * | 2010-09-15 | 2012-03-15 | Spetalnick Jeffrey R | Methods of and systems for reducing keyboard data entry errors |
CN103677612A (zh) * | 2012-09-22 | 2014-03-26 | 深圳清华大学研究院 | 电子设备控制装置及电子设备控制方法 |
CN103092448A (zh) * | 2013-01-22 | 2013-05-08 | 上海艾为电子技术有限公司 | 触摸数据处理方法 |
CN103729065A (zh) * | 2013-12-17 | 2014-04-16 | 深圳市慧为智能科技有限公司 | 触控操作映射到实体按键的系统及方法 |
CN109117061A (zh) * | 2018-07-02 | 2019-01-01 | 南昌黑鲨科技有限公司 | 一种输入操作处理方法、处理装置及智能终端 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110688049A (zh) * | 2019-08-30 | 2020-01-14 | 华为技术有限公司 | 触控方法、装置、终端设备和存储介质 |
CN112764564B (zh) * | 2019-10-21 | 2022-10-21 | Oppo广东移动通信有限公司 | 触控信息的处理方法、装置、存储介质及电子设备 |
CN112764564A (zh) * | 2019-10-21 | 2021-05-07 | Oppo广东移动通信有限公司 | 触控信息的处理方法、装置、存储介质及电子设备 |
CN111352790A (zh) * | 2020-02-20 | 2020-06-30 | Oppo(重庆)智能科技有限公司 | 输入事件上报的测试方法、装置、移动终端以及存储介质 |
CN111556354A (zh) * | 2020-04-22 | 2020-08-18 | 深圳Tcl数字技术有限公司 | 全局界面显示方法、电视及计算机可读存储介质 |
CN111556354B (zh) * | 2020-04-22 | 2024-02-06 | 深圳Tcl数字技术有限公司 | 全局界面显示方法、电视及计算机可读存储介质 |
CN111949188A (zh) * | 2020-08-12 | 2020-11-17 | 上海众链科技有限公司 | 用于智能终端的操作控制映射系统、方法及计算机可读存储介质 |
CN112052052A (zh) * | 2020-09-24 | 2020-12-08 | 深圳创维-Rgb电子有限公司 | 按键值的触控方法、装置、终端和存储介质 |
CN112256192A (zh) * | 2020-10-20 | 2021-01-22 | 北京字节跳动网络技术有限公司 | 电子设备的控制方法、装置、终端和存储介质 |
CN114442820A (zh) * | 2020-10-30 | 2022-05-06 | 深圳Tcl新技术有限公司 | 一种基于激光交互的控制方法和计算机设备 |
WO2022166772A1 (zh) * | 2021-02-02 | 2022-08-11 | 展讯通信(天津)有限公司 | 一种应用程序切换方法及装置 |
CN115237328A (zh) * | 2021-04-25 | 2022-10-25 | 北京小米移动软件有限公司 | 移动终端的控制方法、装置、移动终端及介质 |
CN115237328B (zh) * | 2021-04-25 | 2024-10-01 | 北京小米移动软件有限公司 | 移动终端的控制方法、装置、移动终端及介质 |
CN114764270A (zh) * | 2021-07-29 | 2022-07-19 | 华为技术有限公司 | 输入转换方法、电子设备和可读介质 |
CN114764270B (zh) * | 2021-07-29 | 2023-03-24 | 华为技术有限公司 | 输入转换方法、电子设备和可读介质 |
CN114546549A (zh) * | 2022-01-24 | 2022-05-27 | 中国第一汽车股份有限公司 | 应用程序的控制方法、手势处理装置、智能终端及车辆 |
CN114968053A (zh) * | 2022-04-13 | 2022-08-30 | Oppo广东移动通信有限公司 | 操作处理方法及装置、计算机可读存储介质和电子设备 |
CN114968053B (zh) * | 2022-04-13 | 2024-05-03 | Oppo广东移动通信有限公司 | 操作处理方法及装置、计算机可读存储介质和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109885245B (zh) | 2021-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109885245A (zh) | 应用控制方法、装置、终端设备及计算机可读取存储介质 | |
CN107704744A (zh) | 身份验证方法、装置及移动终端 | |
CN108628645A (zh) | 应用程序预加载方法、装置、存储介质及终端 | |
CN105335136B (zh) | 智能设备的控制方法及装置 | |
CN105653071B (zh) | 一种信息处理方法和电子设备 | |
CN102314386A (zh) | 一种测试移动终端的方法与设备 | |
CN112684970B (zh) | 虚拟场景的适配显示方法、装置、电子设备及存储介质 | |
CN110384920B (zh) | 虚拟现实多人桌游互动系统、互动方法及服务器 | |
US8436829B1 (en) | Touchscreen keyboard simulation for performance evaluation | |
CN110275665A (zh) | 一种触摸屏操作方法、电子设备及存储介质 | |
CN111467791B (zh) | 目标对象的控制方法及装置、系统 | |
CN111467790B (zh) | 目标对象的控制方法及装置、系统 | |
CN109901733A (zh) | 一种触控方法、触控设备及计算机可读存储介质 | |
WO2021203831A1 (zh) | 虚拟对象控制方法、装置、计算机设备和存储介质 | |
CN111330275A (zh) | 游戏中的交互方法及装置、存储介质及电子设备 | |
CN109388309A (zh) | 菜单的显示方法、装置、终端及存储介质 | |
CN107626105B (zh) | 游戏画面显示方法及装置、存储介质、电子设备 | |
CN110134237A (zh) | 界面控制方法及相关设备 | |
CN107071330A (zh) | 一种视频通话互动的方法及移动终端 | |
Kim et al. | Game interface enhancement under smartphone platform focused on touchscreen interaction | |
CN106855772A (zh) | 一种信息展示方法及装置 | |
CN106527916A (zh) | 基于虚拟现实设备的操作方法、装置及操作设备 | |
CN109842727A (zh) | 触控信号的上报方法、装置、终端及存储介质 | |
CN110538460B (zh) | 移动装置 | |
CN104036133A (zh) | 一种棋牌游戏系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |