传感器的配置方法、装置、终端及存储介质与流程

文档序号:15980881发布日期:2018-11-17 00:19阅读:282来源:国知局

本申请实施例属于传感器技术领域,特别涉及一种传感器的配置方法、装置、终端及存储介质。

背景技术

终端作为用户与外界进行信息交换的工具,通常通过陀螺仪、距离感应器、指纹传感器和光线感应器等传感器,根据用户的操作获取传感信息。

相关技术中,终端为了减小传感器受误操作的影响,通常在操作系统的rom(read-onlymemory,只读内存)中设定一个只读的获取传感信息的灵敏度值。传感器根据该灵敏度值指示的采集频率或者采集时延等传感信息。

然而,由于终端中只读的灵敏度值通常较高,造成终端在某些预定应用运行时获取传感信息较为迟滞,导致预定应用接收用户的操作的效果较差。



技术实现要素:

本申请实施例提供了一种传感器的配置方法、装置、终端及存储介质,可以解决由终端中只读的灵敏度值通常较高,造成终端在某些预定应用运行时获取传感信息较为迟滞,导致预定应用接收用户的操作的效果较差的问题。该技术方案如下:

根据本申请的第一方面,提供了一种传感器的配置方法,所述方法包括:

获取预定程序的运行状态信息,运行状态信息是指示预定应用在运行时终端中的硬件组件的状态信息;

根据运行状态信息检测预定应用是否处于指定场景;

当预定应用处于指定场景时,根据运行状态信息确定对应的性能参数,性能参数用于指示终端中的传感器获取传感信息的性能;

根据性能参数配置终端中的传感器。

根据本申请的第二方面,提供了一种传感器的配置装置,所述装置包括:

获取模块,被配置为获取预定程序的运行状态信息,所述运行状态信息是指示预定应用在运行时终端中的硬件组件的状态信息;

检测模块,被配置为根据所述运行状态信息检测所述预定应用是否处于指定场景;

确定模块,被配置为当所述预定应用处于所述指定场景时,根据所述运行状态信息确定对应的性能参数,所述性能参数用于指示所述终端中的传感器获取传感信息的性能;

配置模块,被配置为根据所述性能参数配置所述终端中的传感器。

根据本申请的第三方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如第一方面所述的传感器的配置方法。

根据本申请的第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如第一方面所述的传感器的配置方法。

本申请实施例提供的技术方案带来的有益效果至少包括:

由于本申请实施例在实现时,能够获取预定程序的运行状态信息,并根据该运行状态信息检测预定应用是否处于指定场景,当预定应用处于指定场景时,根据运行状态信息确定对应的性能参数;随后,将按照该性能参数配置终端中的传感器,其中,运行状态信息是指示预定应用在运行时终端中的硬件组件的状态信息,性能参数用于指示终端中的传感器获取传感信息的性能。由于本申请能够根据预定应用的运行状态信息确定其当前所处于的场景,且能够查找到对应其当前场景的性能参数,并据此配置终端中的传感器。因此,本申请实施例能够将传感器的性能调整至最适合预定应用的场景信息的程度,提高了预定应用采集传感信息的灵敏度,进而优化了控制预定应用的效果。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请一个示例性实施例提供的终端100的结构方框图;

图2是本申请一个示例性实施例提供的第三方应用程序与操作系统之间的数据通信示意图;

图3是本申请一个示例性实施例提供的一种存储器存储的程序和数据的示意图;

图4是本申请一个示例性实施例提供一种接口通信系统的架构图;

图5是本申请一个示例性实施例提供另一种接口通信系统的架构图;

图6是本申请一个示例性实施例提供的另一种存储器存储的程序和数据的示意图;

图7是本申请一个示例性实施例提供的传感器的配置方法的流程图;

图8是是基于图7所示实施例提供的一种传感器参数调整的用户界面图;

图9是本申请一个示例性实施例体用的传感器的配置方法的流程图;

图10是本申请一个示例性实施例提供的传感器的配置装置的结构框图。

具体实施方式

为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。

为了本申请实施例所示方案易于理解,下面将对本申请实施例中出现的若干名词进行介绍。

预定应用:指能够运行在终端的操作系统中,并提供可视的用户界面的指定应用。其中,预定应用可以是游戏应用、购物程序、即时通讯程序、博客应用、制图绘画应用、文本编辑应用、订票应用、地图导航应用、视频播放应用、直播应用、浏览器应用、阅读应用、音乐应用、理财支付应用、相机应用、相片美化程序、智能设备控制应用、电话应用、短信程序、天气应用、时钟程序、系统搜索应用、联系人程序、共享交通应用、物流应用、打车应用、外卖应用、考勤打卡应用和扫码应用中至少一种。

游戏应用:包括独立封装的游戏应用、通过第三方应用提供启动入口的游戏应用和集成在第三方应用中的游戏应用中的至少一种。

可选地,当游戏应用是独立封装的游戏应用时,该游戏应用可以是一个单独的应用、程序或者客户端。例如,游戏应用可以是通过apk(androidpackage,安卓安装包)安装在搭载安卓系统的终端中的应用;或者,游戏应用也可以是通过ipa(iphoneapplication,苹果应用)安装包安装在搭载ios操作系统的终端中的应用。

可选地,当游戏应用是通过第三方应用提供入口的应用时,该游戏应用可以由指定的第三方应用提供入口。例如,该游戏应用可以是通过html5(hypertextmarkuplanguage5,超级文本标记语言第5版)编写的小程序(miniprogram)、轻应用(lightapp)或者快应用等。

可选地,游戏应用也可以根据进行游戏的方式进行分类,例如,可以包括第一人称射击类游戏应用fps、角色扮演类游戏应用rpg、动作角色扮演类游戏应用arpg、多人在线战术竞技游戏应用moba、大型多人在线类游戏应用mmog、消除类游戏应用、捕鱼类游戏应用、卡牌类游戏应用、音乐类游戏应用和放置类游戏应用中的至少一种。

在一种可能的实现方式中,当游戏应用是大型多人在线类游戏应用mmog时,该mmog可以包括:策略类大型多人在线游戏应用mmoslg、冒险类大型多人在线游戏应用mmoavg、模拟类大型多人在线游戏应用mmosg、运动类大型多人在线游戏应用mmospt、赛车类大型多人在线游戏应用mmorcg、角色扮演类大型多人在线游戏应用mmorpg中的至少一种。

在一种可能的实现方式中,该通过第三方应用提供入口的应用无需下载安装包即可使用,相应的,在不需要使用该应用时,也无需卸载。需要说明的是,该应用在第一次使用时是通过指定的第三方应用提供入口,在后续使用过程中,用户可以为该应用创建桌面启动图标,通过桌面启动图标直接启动该应用。其中,第三方应用可以是上述预定应用中的至少一种,或者,也可以是应用市场或应用商店等应用。

可选地,当游戏应用是集成在第三方应用中的游戏应用时,该游戏可以在第三方应用运行时通过指定的启动按钮或者开启操作进行启动。该游戏无需独立安装和卸载,执行该游戏的配置文件和资源文件均可以集成在第三方应用中。

指定场景:用于指示预定应用当前显示的用户界面的类别,或者,显示内容的分类。预定应用程序在运行过程中,可以包括至少一个指定场景。

可选地,当预定应用是游戏应用时,指定场景包括资源更新场景、账号登录场景、游戏主界面场景、商城界面场景、游戏内加载场景或团战场景信息中的至少一种。

在一种可能的实现方式中,当预定应用是具有瞄准场景的游戏时,例如第一人称射击类游戏应用fps、角色扮演类游戏应用rpg、多人在线战术竞技游戏应用moba或大型多人在线类游戏应用mmog等时,指定场景还可以包括枪械瞄准场景、弓箭瞄准场景或指向性技能瞄准场景中的至少一种。

运行状态信息:运行状态信息是指示预定应用在运行时终端中的硬件组件的状态信息。其中,硬件组件是终端中的硬件,可以包括输入组件、处理器、存储组件和通讯组件。

可选地,输入组件可以包括触摸屏、传感器、实体按键(音量加键、音量减键、开关机键或home键等)、外接鼠标、外接键盘、外接操控手柄、耳机插孔按键和外接体感设备中至少一种。当运行状态信息包括用于指示预定应用调用终端中输入组件的情况时,运行状态信息可以包括用于指示预定应用开启的输入组件的标识、次数或频率中至少一种。

可选地,传感器可以是mems(microelectromechanicalsystems,微机电系统)器件,包括加速度传感器g-sensor、陀螺仪、距离感应器、指纹传感器、麦克风、光线感应器和热感应器中至少一种。

可选地,处理器可以包括cpu(centralprocessingunit,中央处理器)、gpu(graphicsprocessingunit,图形处理器)、npu(neural-networkprocessingunit,神经网络处理器)、tpu(tensorprocessingunit,高性能处理器)或dpu(deeplearningprocessingunit,深度学习处理器)中的至少一种。当运行状态信息是指示预定应用调用终端中处理器的情况的相关信息时,运行状态信息可以包括用于指示预定应用调用处理器的标识、占用率或占用核心个数中至少一种。

可选地,存储组件可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储组件还可以包括高速随机存取存储器,以及非易失性存储器。比如一个或多个磁盘存储设备、闪存存储设备。当运行状态信息包括用于指示预定应用调用终端中存储组件的情况时,运行状态信息可以用于指示预定应用调用存储组件的频率、读数据量或写数据量中至少一种。

可选地,通讯组件用于接收和发射rf(radiofrequency,射频)信号,也称电磁信号。通讯组件通过电磁信号与通信网络以及其它通信设备进行通信。通讯组件将电信号转换为电磁信号发送,或者,将接收到的磁信号转换为电信号。可选地,通讯组件可以包括天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、解码芯片组、用户身份模块卡等等。当运行状态信息包括用于指示预定应用调用终端中通讯组件的相关信息时,运行状态信息可以用于指示预定应用通过通讯组件接收数据的数据量、发送数据的数据量或调用通讯组件的频率中至少一种。

性能参数:用于指示终端中传感器获取传感信息的性能。其中,操作可以来自于用户、开发人员、维修人员、测试人员以及其它能够通过传感器对终端输入提高操作的对象中至少一种。

可选地,该性能参数可以包括传感器的精确度、传感器的延迟或传感器的上报速率中的至少一种。

可选地,当该性能参数包括传感器的精确度时,操作系统可以通过配置传感器中的寄存器,将传感器配置为不同的传感模式。不同的传感模式可以对应不同的传感器的精确度。需要说明的是,传感器的精确度可以取决于a/d转换精度(模拟信号/数字信号转换精度)。例如,当陀螺仪的a/d转换精度较高时,传感器的精确度较高。反之,当陀螺仪的a/d转换精度较低时,传感器的精确度较低。可见,在一种可能的实现方式中,传感器的精确度与传感器的a/d转换精度呈正相关关系。

可选地,当该性能参数包括传感器的延迟时,操作系统可以通过配置传感器采样速率、传感器与终端处理器之间信息传输总线速率、驱动程序的加载方式(实现方式)或处理器的占用率(操作系统的负载)等参数来改变传感器的延迟。其中,上述几种参数可以在能够被操作系统配置的场景下进行配置。

在一种可能实现的方式中,上述几种参数中存在不能该配置的参数。例如,传感器与终端处理器之间信息传输总线速率,主要取决于总线的硬件性能,该参数在部分实现场景中不能够被改变。

可选地,驱动程序的加载方式可以包括通过linux内核加载、多核处理器加载或者dsp(digitalsignalprocessing,数字信号处理)专用芯片加载。在一种可能实现的方式中,驱动程序可以通过调用class.forname方法实现,也可以通过添加系统的jdbc.drivers属性来实现,还可以通过registerdriver方法注册来实现。

可选地,当该性能参数包括传感器的上报速率时,操作系统可以先获取该传感器本身器件的属性,当确定该上报速率能够更改时,操作系统将通过修改该上报速率调整预定应用(或操作系统)获取传感器的传感信息的性能。

请参考图1,其是本申请一个示例性实施例提供的终端100的结构方框图。该终端100可以是智能手机、平板电脑、mp4播放终端、mp5播放终端、学习机、点读机、电纸书、电子词典、车载终端等能够运行应用程序的电子设备。本申请中的终端100可以包括一个或多个如下部件:处理器110、存储器120和输入输出装置130。

处理器110可以包括一个或者多个处理核心。处理器110利用各种接口和线路连接整个终端100内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行终端100的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(digitalsignalprocessing,dsp)、现场可编程门阵列(field-programmablegatearray,fpga)、可编程逻辑阵列(programmablelogicarray,pla)中的至少一种硬件形式来实现。处理器110可集成中央处理器(centralprocessingunit,cpu)、图像处理器(graphicsprocessingunit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。

存储器120可以包括随机存储器(randomaccessmemory,ram),也可以包括只读存储器(read-onlymemory)。可选地,该存储器120包括非瞬时性计算机可读介质(non-transitorycomputer-readablestoragemedium)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等,该操作系统可以是安卓(android)系统(包括基于android系统深度开发的系统)、苹果公司开发的ios系统(包括基于ios系统深度开发的系统)或其它系统。存储数据区还可以存储终端100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。

存储器120可分为操作系统空间和用户空间,操作系统即运行于操作系统空间,原生及第三方应用程序即运行于用户空间。为了保证不同第三方应用程序均能够达到较好的运行效果,操作系统针对不同第三方应用程序为其分配相应的系统资源。然而,同一第三方应用程序中不同应用场景对系统资源的需求也存在差异。比如,在本地资源加载场景下,第三方应用程序对磁盘读取速度的要求较高;在动画渲染场景下,第三方应用程序则对gpu性能的要求较高。而操作系统与第三方应用程序之间相互独立,操作系统往往不能及时感知第三方应用程序当前的应用场景,导致操作系统无法根据第三方应用程序的具体应用场景进行针对性的系统资源适配。

如图2所示,为了使操作系统能够区分第三方应用程序的具体应用场景,需要打通第三方应用程序与操作系统之间的数据通信,使得操作系统能够随时获取第三方应用程序当前的场景信息,进而基于当前场景进行针对性的系统资源适配。

以操作系统为android系统为例,存储器120中存储的程序和数据如图3所示,存储器120中可存储有linux内核层220、系统运行库层240、应用框架层260和应用层280。其中,linux内核层220、系统运行库层240和应用框架层260属于操作系统空间,应用层280属于用户空间。linux内核层220为终端100的各种硬件提供了底层的驱动,如显示驱动、音频驱动、摄像头驱动、蓝牙驱动、wi-fi驱动、电源管理等。系统运行库层240通过一些c/c++库来为android系统提供了主要的特性支持。如sqlite库提供了数据库的支持,opengl/es库提供了3d绘图的支持,webkit库提供了浏览器内核的支持等。在系统运行库层240中还提供有安卓运行时库(androidruntime),它主要提供了一些核心库,能够允许开发者使用java语言来编写android应用。应用框架层260提供了构建应用程序时可能用到的各种api,开发者也可以通过使用这些api来构建自己的应用程序,比如活动管理、窗口管理、视图管理、通知管理、内容提供者、包管理、通话管理、资源管理、定位管理。应用层280中运行有至少一个应用程序,这些应用程序可以是操作系统自带的原生应用程序,比如联系人程序、短信程序、时钟程序、相机应用等;也可以是第三方开发者所开发的第三方应用程序,比如游戏应用、即时通信程序、相片美化程序、购物程序等。

操作系统与第三方应用程序之间一种可行的通信方式如图4所示,第三方应用程序中内嵌有用于与操作系统进行通信的软件开发工具包(softwaredevelopmentkit,sdk)。

其中,sdk包含若干经过抽象的应用程序编程接口(applicationprogramminginterface,api),并由操作系统开发者提供给第三方应用程序开发者,并由第三方应用程序开发者将该sdk内嵌到第三方应用程序中。此类第三方应用程序安装并运行在操作系统后,即可调用sdk提供的api与操作系统进行通信。

如图4所示,系统运行库层240可以额外包括接口通信系统242。该接口通信系统242可以视为操作系统中的一个子系统,或视为操作系统内嵌的一个应用程序。接口通信系统242中设置有sdk接口,第三方应用程序即调用内嵌sdk的api与该sdk接口之间通过粘合(binder)的方式进行数据通信。这样,第三方应用程序的应用场景(指定场景)相关的数据(运行状态信息)就可以通过sdk传输给操作系统。

在另一种可行的通信方式中,如图5所示,第三方应用程序还可以采用套接字(socket)方式与接口通信系统242的socket接口建立长连接,第三方应用程序的应用场景相关的数据即可以通过该长连接传输给操作系统。

如图4和5所示,接口通信系统242中可设置有不同的策略模块,接收到第三方应用程序发送的数据后,接口通信系统242即采用第三方应用程序对应的策略模块对数据进行分析,得到相应的资源适配优化策略。基于分析得到的资源适配优化策略,接口通信系统242通过控制接口通知linux内核层220进行系统资源适配优化。其中,该控制接口可以采用sysfs的方式与linux内核层220进行通信。

可选的,接口通信系统242中不同的策略模块可以对应不同的第三方应用程序(即针对不同的应用程序设置策略模块),或者,不同的策略模块对应不同类型的第三方应用程序(即针对不同类型的应用程序设置策略模块),或者,不同的策略模块对应不同的系统资源(即针对不同系统资源设置策略模块),或者,不同的策略模块对应不同的应用场景(即针对不同的以应用场景设置策略模块),本申请实施例并不对策略模块的具体设置方式进行限定。

其中,接口通信系统242还可以通过binder的方式与应用框架层260进行通信,用于接收应用框架层260发送的前景应用信息,从而基于前景应用信息,仅针对当前前台运行的第三方应用程序进行系统资源优化。

以操作系统为ios系统为例,存储器120中存储的程序和数据如图6所示,ios系统包括:核心操作系统层320(coreoslayer)、核心服务层340(coreserviceslayer)、媒体层360(medialayer)、可触摸层380(cocoatouchlayer)。核心操作系统层320包括了操作系统内核、驱动程序以及底层程序框架,这些底层程序框架提供更接近硬件的功能,以供位于核心服务层340的程序框架所使用。核心服务层340提供给应用程序所需要的系统服务和/或程序框架,比如基础(foundation)框架、账户框架、广告框架、数据存储框架、网络连接框架、地理位置框架、运动框架等等。媒体层360为应用程序提供有关视听方面的接口,如图形图像相关的接口、音频技术相关的接口、视频技术相关的接口、音视频传输技术的无线播放(airplay)接口等。可触摸层380为应用程序开发提供了各种常用的界面相关的框架,可触摸层380负责用户在终端100上的触摸交互操作。比如本地通知服务、远程推送服务、广告框架、游戏工具框架、消息用户界面接口(userinterface,ui)框架、用户界面uikit框架、地图框架等等。

在图6所示出的框架中,与大部分应用程序有关的框架包括但不限于:核心服务层340中的基础框架和可触摸层380中的uikit框架。基础框架提供许多基本的对象类和数据类型,为所有应用程序提供最基本的系统服务,和ui无关。而uikit框架提供的类是基础的ui类库,用于创建基于触摸的用户界面,ios应用程序可以基于uikit框架来提供ui,所以它提供了应用程序的基础架构,用于构建用户界面,绘图、处理和用户交互事件,响应手势等等。

其中,在ios系统中实现第三方应用程序与操作系统数据通信的方式以及原理可参考android系统,本申请在此不再赘述。

输入输出装置130可以包括触摸显示屏,该触摸显示屏用于接收用户使用手指、触摸笔等任何适合的物体在其上或附近的触摸操作,以及显示各个应用程序的用户界面。触摸显示屏通常设置在终端100的前面板。触摸显示屏可被设计成为全面屏、曲面屏或异型屏。触摸显示屏还可被设计成为全面屏与曲面屏的结合,异型屏与曲面屏的结合,本申请实施例对此不加以限定。

除此之外,本领域技术人员可以理解,上述附图所示出的终端100的结构并不构成对终端100的限定,终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。比如,终端100中还包括射频电路、输入单元、传感器、音频电路、无线保真(wirelessfidelity,wifi)模块、电源、蓝牙模块等部件,在此不再赘述。

请参考图7,其是本申请一个示例性实施例提供的传感器的配置方法的流程图。该传感器的配置方法可以应用在上述图1所示的终端中。在图7中,该传感器的配置方法包括:

步骤710,获取预定程序的运行状态信息,运行状态信息是指示预定应用在运行时终端中的硬件组件的状态信息。

在本申请实施例中,终端中运行有预定应用,且该预定应用处于前台运行状态。例如,当终端中搭载的操作系统是安卓系统时,终端中的操作系统可以获取活动栈(activitystack)栈顶的活动(activity)的标识,将该活动的标识对应的应用确定为预定应用,即将在前台运行的应用确定为预定应用。

其中,终端中的操作系统可以通过sdk接口接收预定应用传输来的当前应用场景的相关数据。或者,也可以通过socket接口建立的长连接来获取预定应用传输来的当前应用场景的相关数据。当操作系统检测到该相关数据指示的应用场景是指定场景时,终端将该相关数据获取为运行状态信息。

可选地,本申请实施例还可以在操作系统中预先设置(在终端出厂前或者由系统开发人员设置)一个第一系统应用。该第一系统应用的权限较高,能够获取预定应用中的运行状态信息。在一种可能的实现方式中,终端启动第一系统应用,该第一系统应用用于获取预定程序的运行状态信息;操作系统控制第一系统应用,控制第一系统应用调用第一系统应用中的第一sdk,通过内嵌在预定应用中的第一sdk的应用程序接口api中获取预定程序的运行状态信息。

可选地,基于通过内嵌在预定应用中的第一sdk的应用程序接口api中获取预定程序的运行状态信息的方案,终端还可以通过下列步骤确定预定应用是否处于指定场景。步骤a,操作系统通过第一系统应用通过第一系统应用检测运行状态信息是否属于预设类型的场景信息;步骤b,当运行状态信息是否属于预设类型的场景信息时,确定预定应用处于指定场景。例如,运行状态信息经过策略模块的分析后确认是策略模块中预设的团战信息时,第一系统应用将确认预定应用处于指定场景。

例如,以预定应用是游戏应用为例,当操作系统检测到游戏应用中运行有枪械瞄准场景(指定场景)时,操作系统将获取预定程序的运行状态信息,该运行状态信息指示游戏应用调用终端中的cpu、gpu、触摸屏、外接鼠标或外接操控手柄的情况。

再例如,以预定应用是购物程序为例,当操作系统检测到购物程序中存在秒杀购物场景时,操作系统将获取预定程序的运行状态信息,该运行状态信息指示购物程序调用cpu、gpu、触摸屏和通讯组件的情况。

再比如,以预定应用是视频播放应用为例,当操作系统检测到视频播放应用正在播放vr(virtualreality,虚拟现实)视频时,操作系统将运行状态信息,该运行状态信息指示视频播放应用调用cpu、gpu、陀螺仪或g-sensor的情况。

步骤720,根据运行状态信息检测预定应用是否处于指定场景。

在本申请实施例中,操作系统将根据运行状态信息检测预定应用是否处于指定场景。

步骤730,当预定应用处于指定场景时,根据运行状态信息确定对应的性能参数,性能参数用于指示终端中的传感器获取传感信息的性能。

在本申请实施例中,操作系统将根据运行状态信息确定对应的性能参数。操作系统可以通过策略模块确定运行状态信息对应的性能参数,操作系统中预先保存了至少一个策略模块。当获取到对应的策略模块后,操作系统使用该策略模块对运行状态信息进行分析,获得运行状态信息对应的性能参数。

步骤740,根据性能参数配置终端中的传感器。

在本申请实施例中,操作系统可以根据性能参数配置终端中的传感器。例如,请参见表一,在操作系统根据性能参数配置终端中的传感器前,传感器的性能参数包括三项,分别为“传感器的精确度”、“传感器的延迟”和“传感器的上报速率”。其中,这三项性能参数是操作系统默认设置的参数,即“传感器的精确度”默认设置为为level4(等级4)、“传感器的延迟”设置1ms和“传感器的上报速率”设置为300次每秒。需要说明的是,“传感器的精确度”在终端中可以按照不同的等级进行设置,级别数字越小,精确度越高,如level2的精确度要高于level4的精确度。

例如,请参见图8,其是基于图7所示实施例提供的一种传感器参数调整的用户界面图。在用户界面810中,终端中正在运行赛车类大型多人在线游戏应用mmorcg时,终端检测该mmorcg是否处于赛车竞技场景(另外该mmorcg还可能处于资源更新场景、账号登录场景、游戏主界面场景或商城界面场景等非游戏场景)。当该mmorcg处于赛车竞技场景时,用户界面810转变为用户界面820,用户界面820中紧贴边框显示有弹窗830,弹窗830中显示有提示信息“进入灵敏感应模式”的提示消息。同时,操作系统将传感器的精确度从level4调整为level2,将传感器的延迟从1ms调整为0.5ms,将传感器的上报速率从300次每秒调整为600次每秒。具体地,可以参照表一所示内容。

可选地,为了减小弹窗840对用户界面830中其它显示内容的遮挡,弹窗830可以在经过预定时长后,自动关闭。例如在显示3秒后自动关闭弹窗830。

可选地,在另一种可能实现的方式中,弹窗840可以设置为半透明状态。

表一

相应的,传感器将根据被操作系统配置后的性能采集用户的体感操作,并获取(生成)传感信息。

在本申请的一种可能实现的方式中,终端能够对应不同的预定应用中的指定场景配置传感器的性能。比如,当预定应用是游戏应用时,终端可以在该游戏应用处于赛车竞技场景或提高游戏场景时将陀螺仪等传感器配置地更为灵敏,便于预定应用准确快速地获取用户的体感操作。或者,当预定应用是视频播放应用且处于播放vr视频场景时,终端可以将g-sensor配置地更为灵敏,以便用户细微的头部移动都能够产生相应的画面变化,从而提高vr视频的播放效果。

综上所述,本申请实施例提供的传感器的配置方法,由于本申请实施例在实现时,能够获取预定程序的运行状态信息,并根据该运行状态信息检测预定应用是否处于指定场景,当预定应用处于指定场景时,根据运行状态信息确定对应的性能参数;随后,将按照该性能参数配置终端中的传感器,其中,运行状态信息是指示预定应用在运行时终端中的硬件组件的状态信息,性能参数用于指示终端中的传感器获取传感信息的性能。由于本申请能够根据预定应用的运行状态信息确定其当前所处于的场景,且能够查找到对应其当前场景的性能参数,并据此配置终端中的传感器。因此,本申请实施例能够将传感器的性能调整至最适合预定应用的场景信息的程度,提高了预定应用采集传感信息的灵敏度,进而优化了控制预定应用的效果。

本申请实施例还可以在预定应用是游戏应用时,针对传感器进行相应的配置,以提高游戏应用的操控性。具体实施过程可参见图9,图9是本申请一个示例性实施例体用的传感器的配置方法的流程图。该传感器的配置方法可以应用在上述图1所示的终端中。在图9中,该传感器的配置方法包括:

步骤901,通过第一系统应用检测预定应用是否为游戏应用。

在本申请实施例中,终端可以通过第一系统应用检测预定应用是否为游戏应用。具体地,第一系统应用至少可以通过下述两种方案中的一种检测预定应用是否为游戏应用。

在一种可能的实现方式中,终端控制第一系统应用调用第一系统应用中的第一sdk,通过内嵌在预定应用中的第一sdk的api中获取预定应用的行为参数,该行为参数用于指示预定应用从操作系统中获取数据的行为。例如,该获取数据的行为可以包括:动态加载类(dexclassloader)行为、启动服务类(servicestart)行为、从网络上获取数据类(recvnet)行为、文件读写类(filerw)行为、打开网络连接类(opennet)行为、关闭网络连接类(closenet)行为、发送数据类(sendnet)行为、数据泄露类(datalead)行为、发送短信类(sendsms)行为、通话类(phonecall)行为和加密api使用类(cryptousage)行为中的至少一种。需要说明的是,预定应用从操作系统中获取数据的行为种类较多且随着技术的发展不断更新,本申请实施例并不对行为的种类形成限定。第一系统应用在获取到相应的行为参数后,将根据该行为参数指示的行为,检测预定应用是否为游戏应用。

例如,第一系统应用可以根据预设的对应关系,确定预定应用的行为对应的应用类型。在一种能够实现的方式中,第一系统应用可以根据预定应用的行为参数确定预定应用的类型,该预定应用的类型可以包括游戏应用类型、交互应用类型、抢红包应用类型等等类型。当预定应用的类型属于游戏应用类型时,确定预定应用为游戏应用。

在另一种可能实现的方式中,终端将通过第一系统应用检测预定应用是否为白名单中的应用。其中,白名单可以是预先设置在策略模块中的标识集合或标识列表,该白名单中至少包含一个预设的游戏应用标识。当预定应用的标识包含在该白名单中时,预定应用将被确定为游戏应用。随后,操作系统将控制第一系统应用调用第一系统应用中的第一sdk,通过内嵌在预定应用中的第一sdk的api中获取用于指示指定场景的运行状态信息。

例如,白名单中包含“5对5攻防游戏”、“生存枪战游戏”和“旅行甲壳虫”3种游戏的标识“5v5.apk”、“survive.apk”和“travelbeetle.apk”。当终端检测到预定应用的标识属于上述三个标识中的一个时,终端将预定应用确定为游戏应用。

步骤902,当预定应用是游戏应用时,检测预定应用是否处于指定场景。

在本申请实施例中,终端中的操作系统将在确定预定应用是游戏应用时,检测预定应用是否处于指定场景。

可选地,基于第一系统应用通过内嵌在预定应用中的第一sdk的api中获取预定程序的运行状态信息的方案,终端还可以通过下列步骤确定预定应用是否处于指定场景。步骤a,操作系统通过第一系统应用通过第一系统应用检测运行状态信息是否属于预设类型的场景信息;步骤b,当运行状态信息是否属于预设类型的场景信息时,确定预定应用处于指定场景。例如,运行状态信息经过策略模块的分析后确认是策略模块中预设的团战信息时,第一系统应用将确认预定应用处于指定场景。

步骤903,控制第一系统应用调用第一系统应用中的第一sdk,通过内嵌在预定应用中的第一sdk的api中获取预定程序的运行状态信息。

需要说明的是,操作系统将控制第一系统应用调用第一系统应用中的第一sdk,通过内嵌在预定应用中的第一软sdk的api中获取预定程序的运行状态信息。

步骤904,根据运行状态信息确定对应的性能参数,性能参数用于指示终端中的传感器获取传感信息的性能。

在本申请实施例中,步骤904的执行过程和步骤720的执行过程相同,此处不再赘述。

步骤905,启动系统设置应用。

可选地,系统设置应用用于配置终端中的传感器的性能参数。

可选地,系统设置应用既可以是传感器的驱动程序,也可以是传感器对应的第二系统应用,第二系统应用是操作系统提供的用于设置传感器的性能参数的系统应用。

步骤906,通过第一系统应用将运行状态信息对应的性能参数发送至系统设置应用。

在本实施例中,终端的操作系统通过第一系统应用将运行状态信息对应的性能参数发送至系统设置应用。

步骤907,通过系统设置应用根据性能参数配置终端中的传感器。

在本实施例中,操作系统通过系统设置应用根据性能参数配置终端中的传感器。

在一种可能的实现方式中,当系统设置应用是传感器的驱动程序时,操作系统应用将通过传感器的驱动程序配置终端中的传感器。

可选地,传感器的驱动程序可以包括g-sensor驱动程序、陀螺仪驱动程序、距离感应器驱动程序、指纹传感器驱动程序、麦克风驱动程序、光线感应器驱动程序和热感应器驱动程序中至少一种。

在另一种可能的实现方式中,当系统设置应用是第二系统应用时,操作系统可以控制第一系统应用与第二系统应用通信,令第二系统应用根据性能参数配置终端中的传感器。

综上所述,本申请提供的传感器的配置方法,通过第一系统应用检测预定应用是否为游戏应用,当预定应用是游戏应用时,检测预定应用是否处于指定场景,当预定应用处于指定场景时,控制第一系统应用调用第一系统应用中的第一sdk,通过内嵌在预定应用中的第一sdk的api中获取用于指示指定场景的运行状态信息,根据运行状态信息确定对应的性能参数,启动系统设置应用,通过第一系统应用将运行状态信息对应的性能参数发送至系统设置应用,通过系统设置应用根据性能参数配置终端中的传感器。由于本申请能够根据预定应用的运行状态信息确定其当前所处于的场景,且能够查找到对应其当前场景的性能参数,并据此配置终端中的传感器。因此,本申请实施例能够将传感器的性能调整至最适合预定应用的场景信息的程度,提高了预定应用采集传感信息的灵敏度,进而优化了控制预定应用的效果。

下述为本申请装置实施例,可以用于执行本申请方法实施例。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。

请参考图10,其示出了本申请一个示例性实施例提供的传感器的配置装置的结构框图。该传感器的配置装置可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分。该装置包括:

获取模块1010,被配置为当预定应用处于指定场景时,获取用于指示所述指定场景的运行状态信息,所述运行状态信息是指示预定应用在运行时终端中的硬件组件的状态信息;

检测模块1020,被配置为根据所述运行状态信息检测所述预定应用是否处于指定场景;

确定模块1030,被配置为根据所述运行状态信息确定对应的性能参数,所述性能参数用于指示所述终端中的传感器获取传感信息的性能;

配置模块1040,被配置为根据所述性能参数配置所述终端中的传感器。

在一个可选的实施例中,所述获取模块1010还被配置为启动第一系统应用,控制所述第一系统应用调用所述第一系统应用中的第一软件开发套件sdk,通过内嵌在所述预定应用中的所述第一sdk的应用程序接口api中获取所述运行状态信息。

在一个可选的实施例中,所述装置还包括游戏检测模块,所述游戏检测模块被配置为通过所述第一系统应用检测所述预定应用是否为游戏应用;所述获取模块1010被配置为当所述预定应用是游戏应用且预定应用处于指定场景时,控制所述第一系统应用调用所述第一系统应用中的第一sdk,通过内嵌在所述预定应用中的所述第一sdk的应用程序接口api中获取预定程序的运行状态信息。

在一个可选的实施例中,所述游戏检测模块,被配置为控制所述第一系统应用调用所述第一系统应用中的第一软件开发套件sdk,通过内嵌在所述预定应用中的所述第一软件开发套件sdk的应用程序接口api中获取所述预定应用的行为参数,所述行为参数用于指示所述预定应用从所述操作系统中获取数据的行为;根据所述行为参数,检测所述预定应用是否为所述游戏应用。

在一个可选的实施例中,所述游戏检测模块,被配置为通过所述第一系统应用检测所述预定应用是否为白名单中的应用,所述白名单包括至少一个预设的游戏应用标识。

在一个可选的实施例中,所述检测模块1020,被配置为通过所述第一系统应用检测所述运行状态信息是否属于预设类型的场景信息。

在一个可选的实施例中,配置模块1040,被配置为启动系统设置应用,所述系统设置应用用于配置所述终端中的传感器的性能参数;通过所述第一系统应用将所述运行状态信息对应的性能参数发送至所述系统设置应用;通过所述系统设置应用根据所述性能参数配置所述终端中的传感器。

在一个可选的实施例中,所述系统设置应用为传感器的驱动程序。

在一个可选的实施例中,所述系统设置应用为所述传感器对应的第二系统应用,所述第二系统应用是所述操作系统提供的用于设置所述传感器用于接收输入操作的性能参数的系统应用。

在一个可选的实施例中,当所述预定应用是所述游戏应用时,所述指定场景包括:资源更新场景、账号登录场景、游戏主界面场景、商城界面场景、游戏内加载场景或团战场景中的至少一种。

在一个可选的实施例中,运行状态信息包括:所述输入组件的标识、所述预定应用开启的输入组件的次数、所述预定应用开启的输入组件的频率、处理器的标识、处理器的占用率、处理器的核心个数、所述预定应用接收数据的数据量、所述预定应用发送数据的数据量或所述预定应用调用通讯组件的频率中至少一种。

在一个可选的实施例中,当所述预定应用是游戏应用时,所述游戏应用包括独立封装的游戏应用、通过第三方应用提供启动入口的游戏应用和集成在第三方应用中的游戏应用中至少一种。

在一个可选的实施例中,所述性能参数包括:传感器的精确度、传感器的延迟或传感器的上报速率中的至少一种。

本申请实施例还提供了一种计算机可读介质,该计算机可读介质存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上各个实施例所述的传感器的配置方法。

本申请实施例还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上各个实施例所述的传感器的配置方法。

需要说明的是:上述实施例提供的传感器的配置装置在执行传感器的配置方法时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的传感器的配置装置与传感器的配置方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本申请的较佳实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1