一种按键输入控制方法、终端及计算机可读存储介质与流程

文档序号:18213304发布日期:2019-07-19 22:27阅读:135来源:国知局
本发明涉及终端
技术领域
:,更具体地说,涉及一种按键输入控制方法、终端及计算机可读存储介质。
背景技术
::为了增大终端的屏占比,同时减小终端的体积、提升其便携性,终端上的按键被不断精简,按键数目越来越少。例如,请参见图1示出的终端的正视图,目前终端10上最多仅保留音量调整键(包括音量+键11、音量-键12)、电源键13、home键14以及返回键15、设置键16这六个按键。在另外一些终端上,甚至仅保留电源键。随着应用技术的发展,终端不断深入用户生活,终端上需要实现的功能也越来越多,这些功能实现可能不需要用到音量调整、电源开关、返回桌面、返回上一级等功能,却需要其他功能,例如在图片查看应用中,可能比较实用的功能是图片缩放功能。所以,在这种情况下,终端上的按键不能实现应用所需要的功能,或者说按键功能与应用需求不匹配。技术实现要素:本发明要解决的技术问题在于:相关技术中终端上按键功能与应用需求不匹配,无法实现应用所需的功能的问题,针对该技术问题,提供一种按键输入控制方法、终端及计算机可读存储介质。为解决上述技术问题,本发明提供一种按键输入控制方法,该按键输入控制方法包括:确定与终端当前输入场景所对应的按键映射表作为有效按键映射表;监测针对各按键的操作;根据有效按键映射表确定当前所监测的针对某一按键的操作所对应的目标控制功能;控制终端实现目标控制功能。可选的,确定与终端当前输入场景所对应的按键映射表作为有效按键映射表包括:根据终端中当前的前台应用确定与当前输入场景所对应的按键映射表作为有效按键映射表,前台应用为当前能够与用户进行交互的应用。可选的,根据终端中当前的前台应用确定与当前输入场景所对应的按键映射表作为有效按键映射表之前,还包括:通过activitymanagerservice(活动管理服务)监测终端当前的前台应用;或,通过进程列表processlist监测终端当前的前台应用。。可选的,根据终端中当前的前台应用确定与当前输入场景所对应的按键映射表作为有效按键映射表包括:控制input(输入)子系统的inputread(输入读取)线程读取并识别前台应用对应的persist属性值;获取persist属性值对应的按键映射表作为有效按键映射表。可选的,获取persist属性值对应的按键映射表作为有效按键映射表之前,还包括:获取各persist属性值所对应的修改策略,修改策略用于指示对终端中通用按键映射表的修改方式;获取persist属性值对应的按键映射表作为当前输入场景所对应的按键映射表包括:根据persist属性值对终端中存储的通用按键映射表进行修改得到与当前输入场景所对应的按键映射表。可选的,获取persist属性值对应的按键映射表作为有效按键映射表之前,还包括:获取与各个persist属性值对应的按键映射表;对获取的各按键映射表与各persist属性值进行关联存储。可选的,确定与终端当前输入场景所对应的按键映射表作为有效按键映射表之前,还包括:控制input子系统的inputread线程接收键值映射调整指令;根据键值映射调整指令确定用户为某一应用设置的按键映射表或修改策略,修改策略用于指示对终端中通用按键映射表的修改方式。可选的,确定与终端当前输入场景所对应的按键映射表作为有效按键映射表之前,还包括:接收交互指令;对交互指令进行解析,确定交互指令指定终端进入智能按键模式。进一步地,本发明还提供了一种终端,终端包括处理器、存储器及通信总线;通信总线用于实现处理器和存储器之间的连接通信;处理器用于执行存储器中存储的一个或者多个程序,以实现如上任一项的按键输入控制方法的步骤。进一步地,本发明还提供了一种计算机可读存储介质,计算机可读存储介质存储有一个或者多个程序,一个或者多个程序可被一个或者多个处理器执行,以实现如上任一项的按键输入控制方法的步骤。有益效果本发明提供一种按键输入控制方法、终端及计算机可读存储介质,针对现有技术中按键功能既定,无法实现部分应用所需的功能,造成应用用户体验不高的问题,本发明实施例提供一种按键输入控制方法,通过确定与终端当前输入场景所对应的按键映射表作为有效按键映射表,并监测针对各按键的触控操作,然后根据有效按键映射表确定当前所监测的针对某一按键的操作所对应的目标控制功能,控制终端实现目标控制功能。从而使得终端的同一按键可以因为输入场景的不同而实现不同的目标控制功能,摒弃了相关技术中按键功能既定不可更改的做法,在精简按键,减小终端体积以及提升终端屏占比的基础上,保证了应用功能的正常实现,增强了用户体验。附图说明下面将结合附图及实施例对本发明作进一步说明,附图中:图1为
背景技术
:中提供的一种终端的正视图;图2为实现本发明各个实施例一个可选的移动终端的硬件结构示意图;图3为如图2所示的移动终端的无线通信系统示意图;图4为本发明第一实施例中提供的按键输入控制方法的一种流程图;图5为本发明第一实施例中示出的前台应用的一种显示界面示意图;图6为本发明第一实施例中提供的根据当前前台应用确定与当前输入场景相对应的按键映射表的流程图;图7为本发明第一实施例中示出的终端的一种显示界面示意图;图8为本发明第一实施例中示出的终端的另一种显示界面示意图;图9为本发明第一实施例中示出的终端的又一种显示界面示意图;图10为本发明第二实施例中提供的按键输入控制方法的一种流程图;图11为本发明第三实施例中提供的终端的一种硬件结构示意图。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。终端可以以各种形式来实施。例如,本发明中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(personaldigitalassistant,pda)、便捷式媒体播放器(portablemediaplayer,pmp)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字tv、台式计算机等固定终端。后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本发明的实施方式的构造也能够应用于固定类型的终端。请参阅图2,其为实现本发明各个实施例的一种移动终端的硬件结构示意图,该移动终端200可以包括:rf(radiofrequency,射频)单元201、wifi模块202、音频输出单元203、a/v(音频/视频)输入单元204、传感器205、显示单元206、用户输入单元207、接口单元208、存储器209、处理器210、以及电源211等部件。本领域技术人员可以理解,图2中示出的移动终端结构并不构成对移动终端的限定,移动终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。下面结合图2对移动终端的各个部件进行具体的介绍:射频单元201可用于收发信息或通话过程中,信号的接收和发送,具体的,将基站的下行信息接收后,给处理器210处理;另外,将上行的数据发送给基站。通常,射频单元201包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元201还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于gsm(globalsystemofmobilecommunication,全球移动通讯系统)、gprs(generalpacketradioservice,通用分组无线服务)、cdma2000(codedivisionmultipleaccess2000,码分多址2000)、wcdma(widebandcodedivisionmultipleaccess,宽带码分多址)、td-scdma(timedivision-synchronouscodedivisionmultipleaccess,时分同步码分多址)、fdd-lte(frequencydivisionduplexing-longtermevolution,频分双工长期演进)和tdd-lte(timedivisionduplexing-longtermevolution,分时双工长期演进)等。wifi属于短距离无线传输技术,移动终端通过wifi模块202可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图2示出了wifi模块202,但是可以理解的是,其并不属于移动终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。音频输出单元203可以在移动终端200处于呼叫信号接收模式、通话模式、记录模式、语音识别模式、广播接收模式等等模式下时,将射频单元201或wifi模块202接收的或者在存储器209中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元203还可以提供与移动终端200执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元203可以包括扬声器、蜂鸣器等等。a/v输入单元204用于接收音频或视频信号。a/v输入单元204可以包括图形处理器(graphicsprocessingunit,gpu)2041和麦克风2042,图形处理器2041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元206上。经图形处理器2041处理后的图像帧可以存储在存储器209(或其它存储介质)中或者经由射频单元201或wifi模块202进行发送。麦克风2042可以在电话通话模式、记录模式、语音识别模式等等运行模式中经由麦克风2042接收声音(音频数据),并且能够将这样的声音处理为音频数据。处理后的音频(语音)数据可以在电话通话模式的情况下转换为可经由射频单元201发送到移动通信基站的格式输出。麦克风2042可以实施各种类型的噪声消除(或抑制)算法以消除(或抑制)在接收和发送音频信号的过程中产生的噪声或者干扰。移动终端200还包括至少一种传感器205,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板2061的亮度,接近传感器可在移动终端200移动到耳边时,关闭显示面板2061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。显示单元206用于显示由用户输入的信息或提供给用户的信息。显示单元206可包括显示面板2061,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板2061。用户输入单元207可用于接收输入的数字或字符信息,以及产生与移动终端的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元207可包括触控面板2071以及其他输入设备2072。触控面板2071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板2071上或在触控面板2071附近的操作),并根据预先设定的程式驱动相应的连接装置。触控面板2071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器210,并能接收处理器210发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板2071。除了触控面板2071,用户输入单元207还可以包括其他输入设备2072。具体地,其他输入设备2072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种,具体此处不做限定。进一步的,触控面板2071可覆盖显示面板2061,当触控面板2071检测到在其上或附近的触摸操作后,传送给处理器210以确定触摸事件的类型,随后处理器210根据触摸事件的类型在显示面板2061上提供相应的视觉输出。虽然在图2中,触控面板2071与显示面板2061是作为两个独立的部件来实现移动终端的输入和输出功能,但是在某些实施例中,可以将触控面板2071与显示面板2061集成而实现移动终端的输入和输出功能,具体此处不做限定。接口单元208用作至少一个外部装置与移动终端200连接可以通过的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(i/o)端口、视频i/o端口、耳机端口等等。接口单元208可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到移动终端200内的一个或多个元件或者可以用于在移动终端200和外部装置之间传输数据。存储器209可用于存储软件程序以及各种数据。存储器209可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器209可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。处理器210是移动终端的控制中心,利用各种接口和线路连接整个移动终端的各个部分,通过运行或执行存储在存储器209内的软件程序和/或模块,以及调用存储在存储器209内的数据,执行移动终端的各种功能和处理数据,从而对移动终端进行整体监控。处理器210可包括一个或多个处理单元;优选的,处理器210可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器210中。移动终端200还可以包括给各个部件供电的电源211(比如电池),优选的,电源211可以通过电源管理系统与处理器210逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。尽管图2未示出,移动终端200还可以包括蓝牙模块等,在此不再赘述。为了便于理解本发明实施例,下面对本发明的移动终端所基于的通信网络系统进行描述。请参阅图2,图2为本发明实施例提供的一种通信网络系统架构图,该通信网络系统为通用移动通信技术的lte系统,该lte系统包括依次通讯连接的ue(userequipment,用户设备)301,e-utran(evolvedumtsterrestrialradioaccessnetwork,演进式umts陆地无线接入网)302,epc(evolvedpacketcore,演进式分组核心网)303和运营商的ip业务304。具体地,ue301可以是上述终端100,此处不再赘述。e-utran302包括enodeb3021和其它enodeb3022等。其中,enodeb3021可以通过回程(backhaul)(例如x2接口)与其它enodeb3022连接,enodeb3021连接到epc303,enodeb3021可以提供ue301到epc303的接入。epc303可以包括mme(mobilitymanagemententity,移动性管理实体)3031,hss(homesubscriberserver,归属用户服务器)3032,其它mme3033,sgw(servinggateway,服务网关)3034,pgw(pdngateway,分组数据网络网关)3035和pcrf(policyandchargingrulesfunction,政策和资费功能实体)3036等。其中,mme3031是处理ue301和epc303之间信令的控制节点,提供承载和连接管理。hss3032用于提供一些寄存器来管理诸如归属位置寄存器(图中未示)之类的功能,并且保存有一些有关服务特征、数据速率等用户专用的信息。所有用户数据都可以通过sgw3034进行发送,pgw3035可以提供ue301的ip地址分配以及其它功能,pcrf3036是业务数据流和ip承载资源的策略与计费控制策略决策点,它为策略与计费执行功能单元(图中未示)选择及提供可用的策略和计费控制决策。ip业务304可以包括因特网、内联网、ims(ipmultimediasubsystem,ip多媒体子系统)或其它ip业务等。虽然上述以lte系统为例进行了介绍,但本领域技术人员应当知晓,本发明不仅仅适用于lte系统,也可以适用于其他无线通信系统,例如gsm、cdma2000、wcdma、td-scdma以及未来新的网络系统等,此处不做限定。基于上述移动终端硬件结构以及通信网络系统,提出本发明方法各个实施例。第一实施例随着应用技术的发展,各种应用如同雨后春笋般出现,极大地方便了用户的生活。通常,不同的应用可以实现不同的功能,从而为用户提供不同的服务。这种其他应用可能不具备的功能就是应用所需要实现的个性化功能。不过,不管何种应用,都需要安装在终端上,而终端按键数目固定、按键功能固定,因此,不能适配所用应用个性化功能的需求。为了解决相关技术中终端上按键功能固定,与功能灵活多样的各类应用不能做到完全适配,影响应用个性化功能实现的问题,本实施例提供一种按键输入控制方法,图4为该按键输入控制方法的一种流程图:s402:确定与终端当前输入场景所对应的按键映射表作为有效按键映射表。可以理解的是,当用户对终端上某一按键进行操作之后,终端的输入系统可以检测到用户的操作,并确定用户操作的是用于实现何种功能的按键,然后由处理器控制终端实现对应的功能。所以在终端当中,应当存在一组映射关系,用于表征各按键同终端控制功能之间的对应关系。这样,终端的输入系统才能在检测到用户对某一按键的操作之后,确定该按键是用户实现何种功能的按键。通常,终端可以以表格的形式存储按键与控制功能之间的映射关系,本实施例中将该表格称为“按键映射表”。由于相关技术中终端上按键功能固定僵化,不可更改,因此,终端中存储的按键映射表也是固定唯一的,该按键映射表可以由终端研发人员在终端的研发阶段设置并存储在终端内。在终端的使用阶段,终端可以根据检测到的按键输入操作确定该按键输入操作所对应控制功能,进而实现用户下发按键输入操作所要求的控制功能,达到用户的控制目的。本实施例中,将终端中存储的针对所有输入场景的按键映射表称为“通用按键映射表”,通用按键映射表,顾名思义,其并非是单独针对某一输入场景、某一应用的按键映射表,而是在多个输入场景下、多个应用下均会使用的存储按键与控制功能间映射关系的表。不过在本实施例中,终端可以根据当前的输入场景确定对应的按键映射表,不同输入场景下,终端所使用的按键映射表可能不完全相同,甚至完全不同。所以,在本实施例中,终端在实际应用过程中,可能会用到多个不同的按键映射表,这些按键映射表可以是全部存储在终端当中的,例如终端中存储了按键映射表a、按键映射表b以及按键映射表c。在进行用户进行输入的时候,终端会从这三个按键映射表中选择一个与当前输入场景相匹配的,选择出来的按键映射表就是当前输入场景下的有效按键映射表,另外两个按键映射表虽然也存储在终端当中,但它们相对于当前输入场景而言,就是无效按键映射表。当然,在本实施例的另外一些示例当中,终端也可以不用预先将所有输入场景所对应的按键映射表均存储在终端当中,例如终端预先可以仅存储通用按键映射表,在确定与某一输入场景的有效按键映射表的时候,终端可以通过对通用按键映射表进行调整、修改,从而得到当前输入场景下的按键映射表。所以,在这些示例当中,终端可以仅存储通用按键映射表与针对每一输入场景的修改策略,这样,当确定出当前的输入场景后,终端可以获取到与当前输入场景关联存储的修改策略,然后根据修改策略的指示对通用按键映射表进行修改得到当前输入场景下的有效按键映射表。在输入场景变化以后,终端设置可以直接丢弃、删除之前使用的有效按键映射表,从而减小终端的存储负担。当再次进入该输入场景下时,终端可以重新依据修改策略确定有效按键映射表。终端的输入场景可以按照当前需要接收输入的应用确定,例如,如果当前需要接收输入的应用是用用a,则可能当前的输入场景属于场景1,而如果当前需要接收输入的应用是应用b,则当前的输入场景可能属于场景2。在本实施例的一种示例当中,终端可以根据当前的前台应用确定与当前输入场景对应的按键映射表作为有效按键映射表。所谓前台应用是指终端当中当前处于运行状态,能够与用户进行交互的应用。假定终端中安装了社交应用a、即时通讯应用b、运动计步应用c以及阅读应用d。当前处于运行状态的应用有社交应用a与通讯应用b,而当前终端上显示的界面属于通讯应用b的界面,如图5所示,因此,当前只有通讯应用b能够接收用户的输入,并通过显示屏、音频输出单元等向用户进行输出,实现人机交互功能。所以终端50中当前的前台应用是通讯应用b。所以,所谓前台应用实际上也就是上述“需要接收输入的应用”。在本实施例的一些示例当中,在终端根据当前的前台应用确定与当前输入场景所对应的按键映射表作为有效按键映射表之前,终端还需要确定当前的前台应用是哪一个。在一种示例当中,终端可以通过activitymanagerservice监测终端当前的前台应用。由于终端中各应用启动的时候,需要activitymanagerservice的参与,因此,activitymanagerservice可以记录终端当前处于运行状态的应用,并确定出当前处于前台运行的应用是哪一个。在本实施例的另一种示例当中,终端可以通过processlist(进程列表)来确定当前的前台应用。processlist中会记录终端当前启动的所有进程,终端可以查询确定出processlist中各进程所属的应用,进而根据processlist确定终端当前的前台应用。图6提供了一种根据当前前台应用确定与当前输入场景相对应的按键映射表的流程,请参见图6:s602:控制input子系统的inputread线程读取并识别前台应用对应的persist属性值。为了让终端确定某一个应用所对应的有效按键映射表,在本实施例的一些示例当中,可以通过应用对应的persist属性值来指示有效按键映射表的确定。例如,假定按键映射表m作为有效按键映射表时,应用对应的persist属性值为“1”;而按键映射表n作为有效按键映射表时,应用对应的persist属性值为“2”。则需要设置某一应用使用按键映射表m作为有效按键映射表时,可以将该应用对应的persist属性值设置为“1”,如果需要设置该应用在接收用户输入时,使用按键映射表n来确定对应的控制功能,则可以将该应用的persist属性值设置为“2”。可以理解的是,一个应用的persist属性值可以由该应用的设计人员设置,设计人员希望用户在使用该应用时终端按照何种方式确定控制功能,均可以通过设置对应的persist属性值来向终端指定使用对应的有效按键映射表实现。当然,在本实施例的另外一些示例当中,应用的persist属性值也可以由终端根据用户的自定义设置。例如,用户为终端中某一应用指定了对应的有效按键映射表,为了在用户使用该应用的时候,按照用户之前指定按键映射表接收输入,在该示例当中,终端确定用户为该应用所指定的按键映射表之后,可以将该应用的persist属性值设置成与该按键映射表相对应的值。例如终端用户为应用a指定了有效按键映射表,该按键映射表是终端中原本不存在的,终端将应用a的persist属性值设置为“3”;另外用户为应用b指定了有效按键映射表,该按键映射表就是按键映射表n,则终端可以将应用b的persist属性值设置为“2”。所以,为了获取有效按键映射表,终端在确定当前的前台应用之后,可以控制input子系统的inputread线程读取并识别该前台应用对应的persist属性值。s604:获取persist属性值对应的按键映射表。在获取按键映射表作为有效按键映射表的时候,终端就可以根据当前前台应用所对应的persist属性值来获取到一个按键映射表,并将获取到的该按键映射表作为有效按键映射表。应用对应的有效按键映射表可以由用户向终端指定,可选地,可以直接向终端指定按键映射表,也可以指定用户确定有效按键映射表的修改策略,例如,在本实施例的一种示例当中,终端可以控制input子系统的inputread线程接收键值映射调整指令,然后根据该键值映射调整指令确定用户为某一应用设置的按键映射表或修改策略。可以理解的是,如果终端是在获取有效按键映射表之前,预先存储了各输入场景对应的按键映射表,那么在终端在执行s604之前,其需要先获取与各个persist属性值对应的按键映射表,并对获取的各按键映射表与各persist属性值进行关联存储。也即终端需要先获取到各按键映射表,然后建立按键映射表同各个persist属性值之间的对应关系,这样后续过程中,终端才能在获取到前台应用的persist属性值后,根据persist属性值查找到对应的按键映射表作为有效按键映射表。如果终端在获取有效按键映射表之前,并未存储各输入场景对应的按键映射表,而只是存储了通用按键映射表以及各输入场景对应的修改策略,则终端在执行s604之前,需要先获取各persist属性值所对应的修改策略;在执行s604的时候,终端需要根据前台应用的persist属性值确定出对应的修改策略,然后根据确定出来的修改策略对通用按键映射表进行修改得到与当前输入场景所对应的按键映射表。s404:监测针对各按键的操作。获取到当前的有效按键映射表之后,终端可以监测用户在各按键上的操作,也即针对各个按键的操作。应当明白的是,本实施例中所谓的按键可以包括终端上的机械按键,也可以包括控制板上的按键,所以,根据按键类型的不同,这里的操作类型也可以不同:如果按键是机械按键,则这里所谓的操作是按压、也可以是长按操作;如果按键是触控板上的按键,这操作可以包括触控操作、按压操作、长按操作等。s406:根据有效按键映射表确定当前所监测的针对某一按键的操作所对应的目标控制功能。在监测到针对某一按键的操作之后,终端可以根据有效按键映射表确定出在当前输入场景下,针对该按键的操作所对应的控制功能,本实施例中该控制功能称为“目标控制功能”。例如,假定终端内安装了应用a和应用b,其中应用a是一个音视频播放应用,而应用b则是一个图片查看应用。那么应用a主要需要实现的就是向用户展示音频或视频,而应用b则是用户向用户展示图片。假定应用a和应用b的有效按键映射表不同,表1示出了应用a所对应的有效按键映射表:表1按键名称控制功能电源键息屏与亮屏切换音量+键音量增大音量-键音量减小…………返回键循环播放当前多媒体文件应当明白的是,表1中“按键名称”实际上是终端上的按键在通用按键映射表中的名称。所以,在有效按键映射表中,按键名称可能和其对应的实际控制功能不一样。表2示出的是应用b对应的有效按键映射表:表2按键名称控制功能电源键息屏与亮屏切换音量+键以图片中心为基准进行图片放大音量-键以图片中心为基准进行图片缩小…………返回键返回图片缩略图展示界面s408:控制终端实现目标控制功能。根据有效按键映射表确定当前所监测的针对某一按键的操作所对应的目标控制功能后,可以控制终端实现对应的目标控制功能。比较上述应用a和应用b的按键映射表可知,这两个应用对应的有效按键映射表中,音量+键、音量-键以及返回键对应的实际控制功能均有差异。例如,如果终端上当前的前台应用为应用a,则在用户按压音量+键时,终端通过查询表1示出的有效按键映射表,可以确定用户实际是要求调大终端的输出音量,因此,终端可以响应用户的要求,增大音频输出单元的输出音量,同时,终端还可以通过在显示界面上显示音量图案,如图7所示,从而从视觉上回应用户对音量+键的操作。如果终端上当前的前台应用是应用b,则在用户按压音量+键时,终端因为是根据表2确定对应的目标控制功能,因此,可以确定出用户需要实现的控制功能是以图片中心为基准对图片进行放大,那么当终端监测到用户对音量+键的按压操作后,终端可以控制以当前显示的图片中心为基准对图片进行放大,图8和图9分别示出了进行图片放大前的终端显示界面示意图和进行图片放大后的终端显示界面示意图。本实施例提供的按键输入控制方法,通过确定与终端当前输入场景所对应的按键映射表作为有效按键映射表,并监测针对各按键的触控操作,然后根据有效按键映射表确定当前所监测的针对某一按键的操作所对应的目标控制功能,控制终端实现目标控制功能在精简按键的基础上,保证了应用功能的正常实现,增强了用户体验。同时,因为针对不同应用,同一按键可以实现不同的控制功能,这极大地增加了终端应用的趣味性。第二实施例:为了使本领域技术人员对第一实施例中所提供的按键输入控制方法的优点与细节更加清楚,本实施例将结合示例对该按键输入控制方法做进一步说明,请参见图10示出的按键输入控制方法的一种流程图:s1002:接收用户针对目标应用下发的键值映射调整指令。终端可以控制input子系统的inputread线程接收用户下发的键值映射调整指令。可以理解的是,键值映射调整指令用于用户指定在目标应用下,需要按照某一种按键映射表来确定对应的控制功能,所以,用户下发的键值映射调整指令通常是有目标对象的,例如是针对某一个或者某些应用,这个应用或这些应用就是目标应用。s1004:对接收到的键值映射调整指令进行解析,获取目标应用对应的修改策略。在本实施例中,终端通过对键值映射调整指令进行解析,可以得到目标应用对应的修改策略,但在本实施例的其他一些示例中,终端在接收并解析键值映射调整指令之后,也可以根据解析结果获取到目标应用对应的按键映射表。s1006:将修改策略与目标应用的persist属性值进行关联存储。获取到修改策略之后,终端可以将该修改策略与目标应用的persist属性值进行关联存储,这样,在后续需要获取目标应用对应的有效按键映射表的时候,可以根据目标应用对应的persist属性值获取到对应的修改策略。当然,在本实施例的其他一些示例当中,如果终端直接根据键值映射调整指令获取到了目标应用对应的按键映射表,则终端也可以将获取到的按键映射表同目标应用的persist属性值进行关联存储,这样,当需要获取目标应用的有效按键映射表的时候,终端可以直接根据目标应用的persist属性值提取出预先存储的按键映射表作为有效按键映射表。s1008:在目标应用成为前台应用时,根据目标应用的persist属性值获取修改策略。在一种示例当中,终端可以通过activitymanagerservice监测终端当前的前台应用。由于终端中各应用启动的时候,需要activitymanagerservice的参与,因此,activitymanagerservice可以记录终端当前处于运行状态的应用,并确定出当前处于前台运行的应用是哪一个。在本实施例的另一种示例当中,终端可以通过processlist来确定当前的前台应用。processlist中会记录终端当前启动的所有进程,终端可以查询确定出processlist中各进程所属的应用,进而根据processlist确定终端当前的前台应用。在确定出当前的前台应用是目标应用的情况下,终端可以根据前台应用对应的persist属性值提取出预先存储的修改策略。该修改策略指示了应当如何对终端中的通用按键映射表进行修改才能得到目标应用的有效按键映射表。s1010:根据获取的修改策略对通用按键映射表进行修改得到有效按键映射表。终端根据前台应用的persist属性值确定出对应的修改策略后,根据确定出来的修改策略对通用按键映射表进行修改得到与当前前台应用所对应的按键映射表。在本实施例的一些示例当中,尽管有的应用支持使用通用按键映射表以外的其他按键映射表进行输入,不过,用户可能并不习惯不同应用下的不同操作规则,因此,在这些示例当中,用户可以选择不按照应用特有的按键映射表进行输入操作,而是统一根据通用按键映射表进行输入操作。所以,在一些情况下,终端在确定与当前输入场景所对应的按键映射表作为有效按键映射表之前,需要先接收交互指令,在对所述交互指令进行解析,确定该交互指令指定终端进入智能按键模式。也即,终端确定用户指定按照各应用对应的按键映射表接收输入的时候,才会确定与当前输入场景所对应的按键映射表作为有效按键映射表,否则,终端将直接根据通用按键映射表接收用户对按键的输入操作。s1012:判断是否监测到针对某一按键的操作。若判断结果为是,则进入s1014,否则继续执行s1012。本实施例中所谓的按键可以包括电源键(也即power键)、home键、音量调整键、返回键等几种中的至少一种。可以理解的是,这些案件可以是机械按键,也可以包括控制板上的按键,所以,根据按键类型的不同,这里的操作类型也可以不同:如果按键是机械按键。所以,在监测针对各按键的操作的时候,可以是针对机械按键的按压、长按等操作;也可以是针对控制板上按键的触控操作、按压操作、长按操作等。在本实施例中,终端上的按键同时包括机械按键与控制板按键,所以终端监测针对按键的操作时,会同时监测上述几种。s1014:根据有效按键映射表确定该操作对应的目标控制功能。在监测到针对某一按键的操作之后,终端可以根据有效按键映射表确定出在当前输入场景下,针对该按键的操作所对应的控制功能,即目标控制功能。s1016:实现目标控制功能。根据有效按键映射表确定当前所监测的针对某一按键的操作所对应的目标控制功能后,可以控制终端实现对应的目标控制功能。可以理解的是,本实施例以及第一实施例提供的按键输入控制方法,不仅可以保证不同应用能够按照不同规则接收用户从按键上的输入操作,让用户在不同应用下有不同的输入体验,增强输入灵活性的优点;而且,当终端上某一按键损坏之后,用户还可以通过键值映射调整指令对通用按键映射表进行修改,使得终端可以通过其他按键来实现该损坏按键的功能,从而保证用户对终端正常使用,延长终端的使用寿命,增强用户体验。第三实施例:本实施例将提供一种计算机可读存储介质和一种终端,首先对该计算机可读存储介质进行介绍:该计算机可读存储介质中存储一个或多个可供存储器读取、编译或执行的计算机程序,其中就包括按键输入控制程序,该显示控制程序可供处理器执行从而实现第一或第二实施例中提供的按键输入控制方法。请参见图11提供的终端的硬件结构示意图:终端110包括处理器111、存储器112以及用于连接处理器111与存储器112的通信总线113,其中存储器112可以为前述存储有按键输入控制程序的计算机可读存储介质。终端110的处理器111可以执行存储器112中存储按键输入控制程序以实现前述实施例中的按键输入控制方法:处理器111通过确定与终端当前输入场景所对应的按键映射表作为有效按键映射表,并监测针对各按键的触控操作,然后根据有效按键映射表确定当前所监测的针对某一按键的操作所对应的目标控制功能,控制终端实现目标控制功能。在本实施例的一种示例当中,处理器111可以根据所述终端中当前的前台应用确定与当前输入场景所对应的按键映射表作为有效按键映射表,这里所说的前台应用是指当前能够与用户进行交互的应用。可选地,在根据所述终端中当前的前台应用确定与当前输入场景所对应的按键映射表作为有效按键映射表之前,处理器111可以通过activitymanagerservice监测终端当前的前台应用。在本实施例的一种示例当中,处理器111可以控制输入input子系统的输入读取inputread线程读取并识别所述前台应用对应的persist属性值,并获取所述persist属性值对应的按键映射表作为有效按键映射表。在本实施例的一种示例当中,处理器111获取所述persist属性值对应的按键映射表作为有效按键映射表之前,还会先获取各persist属性值所对应的修改策略,所述修改策略用于指示对所述终端中通用按键映射表的修改方式;在获取所述persist属性值对应的按键映射表作为当前输入场景所对应的按键映射表时,处理器111根据所述persist属性值对所述终端中存储的通用按键映射表进行修改得到与当前输入场景所对应的按键映射表。在本实施例的另外一些示例当中,处理器111在获取所述persist属性值对应的按键映射表作为有效按键映射表之前,可以获取与各个persist属性值对应的按键映射表,并对获取的各所述按键映射表与各所述persist属性值进行关联存储。终端实现按键输入控制方法的其他细节请参见前述实施例的介绍,这里不再赘述。本实施例提供的终端中,同一按键可以因为输入场景的不同而实现不同的目标控制功能,摒弃了相关技术中按键功能既定不可更改的做法,在精简按键,减小终端体积以及提升终端屏占比的基础上,保证了应用功能的正常实现,增强了用户体验。当终端上某一按键损坏之后,用户还可以通过键值映射调整指令对通用按键映射表进行修改,使得终端可以通过其他按键来实现该损坏按键的功能,从而保证用户对终端正常使用,延长终端的使用寿命,增强用户体验。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1