异常数据上报方法及装置与流程

文档序号:14305642阅读:669来源:国知局
异常数据上报方法及装置与流程

本发明涉及通信技术领域,特别涉及一种异常数据上报方法及装置。



背景技术:

随着智能终端如手机的快速发展,智能终端的功能也越来越多,用户对智能终端的稳定性的要求也越来越高。

为了使智能终端更加稳定,技术人员在项目的研发阶段就需要尽可能多地测试出漏洞(bug),然后去修复,但这种测试只是小规模测试,手机在后续用户使用的过程中可能出现的异常是无法估计的。

当用户使用手机的过程中产生异常后,通常需要用户主动反馈给售后人员,由售后人员根据各个用户反馈的异常进行分析,以找到相应的解决方案,显然这种人为反馈手机异常的效率较低。



技术实现要素:

为了解决相关技术中人为反馈手机异常的效率较低的问题,本发明实施例提供了一种异常数据上报方法及装置。所述技术方案如下:

第一方面,提供了一种异常数据上报方法,应用于终端中,所述方法包括:

监测异常日志文件,当监测到所述异常日志文件更新时,获取最近添加入所述异常日志文件中的目标异常日志;

获取所述目标异常日志中记录的异常调用栈信息,并获取所述终端的终端信息,根据所述异常调用栈信息以及所述终端信息,生成目标异常数据;

判定所述目标异常数据是否在预存的数据库中,如果所述目标异常数据不在所述数据库中,则将所述异常数据存入所述数据库中;

当达到预设上报周期时,将所述数据库中的数据上报至服务器,并在异常数据上报成功后清空所述数据库。

第二方面,提供了一种异常数据上报装置,应用于终端中,所述装置包括:

监测模块,用于监测异常日志文件,当监测到所述异常日志文件更新时,获取最近添加入所述异常日志文件中的目标异常日志;

第一生成模块,用于获取所述目标异常日志中记录的异常调用栈信息,并获取所述终端的终端信息,根据所述异常调用栈信息以及所述终端信息,生成目标异常数据;

第一存储模块,用于判定所述目标异常数据是否在预存的数据库中,如果所述目标异常数据不在所述数据库中,则将所述异常数据存入所述数据库中;

第一上报模块,用于当达到预设上报周期时,将所述数据库中的数据上报至服务器,并在异常数据上报成功后清空所述数据库。

本发明实施例提供的技术方案带来的有益效果是:

通过当监测到终端运行异常时,终端生成异常数据,将生成的异常数据存入数据库,并定期向服务器上报数据库中存储的异常数据,由于终端会定期向服务器主动上报终端在运行异常时生成的异常数据,从而代替了由用户将异常数据反馈给售后人员,售后人员能够更加及时的获取到手机的异常数据;因此解决了相关技术中人为反馈手机异常的效率较低的问题;达到了提高手机异常的反馈效率,节省人力成本的效果。

附图说明

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

图1是本发明一个实施例提供的异常数据上报方法的流程图;

图2是本申请另一个示例性实施例提供的异常数据上报方法的流程图;

图3a是本申请再一个示例性实施例提供的异常数据上报方法的流程图;

图3b是本申请一个示例性实施例提供的异常日志上报方法的流程图;

图4是本发明一个实施例中提供的异常数据上报装置的结构方框图;

图5是本发明一个示例性实施例提供的终端500的结构框图。

具体实施方式

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

在实际应用中,当用户使用手机的过程中产生异常后,通常需要用户主动反馈给售后人员,由售后人员根据各个用户反馈的异常进行分析,以找到相应的解决方案。由于这种人为反馈手机异常的效率较低,因此本实施例中当监测到终端运行异常时,终端生成异常数据,将生成的异常数据存入数据库,并定期向服务器上报数据库中存储的异常数据,从而提高手机异常的反馈效率。

请参考图1,其示出了本发明一个实施例提供的异常数据上报方法的流程图。该异常数据上报方法可以包括如下步骤:

步骤101,监测异常日志文件,当监测到异常日志文件更新时,获取最近添加入异常日志文件中的目标异常日志。

在终端运行的过程中,通过文件监听器实时监听对应异常日志文件的创建、修改、移动等操作,该异常日志文件中存储有终端运行异常时生成的异常日志。由于每当终端运行异常时,均会生成一份异常日志添加入异常日志文件中,因此最近添加入异常日志文件中的异常日志即为终端最近运行异常时生成的异常日志。在一个示例性的例子中,异常日志文件中存储有“2017年11月22日15时38分”生成的异常日志01、“2017年11月22日12时02分”生成的异常日志02和“2017年11月12日03时04分”生成的异常日志03,终端将异常日志01确定为最近添加入异常日志文件中的目标异常日志。

其中,终端运行异常包括终端的内核异常、系统程序及应用程序异常、系统服务异常以及网络异常中的至少一种。

以内核异常为例,系统内核中至少存储有与操作系统相关的系统文件,以及检测外部设备、正常读写外部设备的驱动文件,基于内核异常可能引起的手机问题有系统重启、系统瘫痪、异常关机等。

由于终端的操作系统启动或运行时均需要调用或读写系统内核中的文件,因此如果系统内核中的文件出现损坏或异常,操作系统则无法正常调用该文件,导致终端运行异常,比如终端的操作系统出现系统重启,或者终端的操作系统出现系统瘫痪,或者终端因系统内核中的文件损坏出现异常关机等现象。

步骤102,获取目标异常日志中记录的异常调用栈信息,并获取终端的终端信息,根据异常调用栈信息以及终端信息,生成目标异常数据。

其中,异常调用栈信息中记载了终端运行异常时的异常模块的标识、异常类型、异常产生时刻等信息。

终端信息包括但不限于终端的系统软件版本号、终端的国际移动设备标识(internationalmobileequipmentidentity,imei)、系统指纹。其中,系统指纹中包括但不限于终端厂商、终端机型、签名等信息。

当终端获取到异常调用栈信息和终端信息后,将异常调用栈信息和终端信息作为目标异常日志对应的目标异常数据。

步骤103,判定目标异常数据是否在预存的数据库中,如果目标异常数据不在数据库中,则将异常数据存入数据库中。

通过数据库,将不在预存的数据库中的异常数据存入数据库中,使得数据库中存储的异常数据各不相同(即对生成的异常数据做去重处理),减少数据库中的异常数据的数量,避免数据库中的异常数据过分占用终端的存储空间。

步骤104,当达到预设上报周期时,将数据库中的数据上报至服务器,并在异常数据上报成功后清空数据库。

其中,预设上报周期可以以时间为基准、也可以以数据库中异常数据的数量为基准。当预设上报周期以时间为基准时,预设上报周期可被设置为1小时、1天、1周等时间,比如预设上报周期为1小时,终端每隔1小时将数据库中的数据上报至服务器;当预设上报周期以日志信息的数量为基准时,预设上报周期可被设置为3、5、10等,比如预设上报周期为5,终端实时监测异常日志文件中的异常数据的数量,当异常数据的数量达到5时,将数据库中的数据上报至服务器。

需要说明的是,考虑到终端存在执行重启、升级、恢复出厂等操作时,可能会对预设上报周期执行初始化操作,故将预设上报周期的具体数值存储在终端存储空间的预设保密分区中,避免终端在执行重启、升级、恢复出厂等操作后,预设上报周期被初始化。

当服务器接收到终端上报的异常数据后,会生成报表信息,该报表数据中至少包括该服务器所接收到的异常数据。

在异常数据上报成功后清空数据库的目的之一是为了减少数据库中的异常数据过分占用终端的存储空间,目的之二是为了避免终端重复上报已经上报至服务器的异常数据。

综上所述,本发明实施例提供的异常数据上报方法通过当监测到终端运行异常时,终端生成异常数据,将生成的异常数据存入数据库,并定期向服务器上报数据库中存储的异常数据,由于终端会定期向服务器主动上报终端在运行异常时生成的异常数据,从而代替了由用户将异常数据反馈给售后人员,售后人员能够更加及时的获取到手机的异常数据;因此解决了相关技术中人为反馈手机异常的效率较低的问题;达到了提高手机异常的反馈效率,节省人力成本的效果。

请参考图2,其示出了本申请另一个示例性实施例提供的异常数据上报方法的流程图。该异常数据上报方法包括:

步骤201,监测异常日志文件,当监测到异常日志文件更新时,获取最近添加入异常日志文件中的目标异常日志。

步骤202,获取目标异常日志中记录的异常调用栈信息,并获取终端的终端信息,根据异常调用栈信息以及终端信息,生成目标异常数据。

步骤203,判定目标异常数据是否在预存的数据库中。

步骤204,如果目标异常数据不在数据库中,则将异常数据存入数据库中。

步骤205,如果目标异常数据在数据库中,则将数据库中目标异常数据对应的异常出现次数加1。

当终端频繁因同一原因导致运行异常时,该终端会重复记录同一异常日志,也就是说,异常日志被终端重复记录的次数,在一定程度上能够反映终端在运行的过程中,因同一原因导致运行异常的频率。

终端因某一原因运行异常的频率对技术人员决定异常数据的分析顺序具有一定的参考价值,比如技术人员可根据每个异常数据分别对应的异常出现次数,优先分析异常出现次数多的异常数据。

步骤206,当达到预设上报周期时,将数据库中的异常数据以及各个异常数据对应的异常出现次数上报至服务器,并在异常数据上报成功后清空数据库。

对应的,当服务器接收到终端上报的异常数据后,统计同一异常数据的异常出现次数,生成报表信息,该报表数据中包括该服务器所接收到的异常数据,以及每个异常数据分别对应的异常出现次数,以便技术人员根据每个异常数据分别对应的异常出现次数,决定分析异常数据的先后顺序。

需要说明的是,本实施例中步骤201至步骤204与步骤101至步骤103类似,因此本实施例不再对步骤201至步骤204赘述说明。

综上所述,本发明实施例提供的异常数据上报方法,通过当监测到终端运行异常时,终端生成异常数据,将生成的异常数据存入数据库,并定期向服务器上报数据库中存储的异常数据,由于终端会定期向服务器主动上报终端在运行异常时生成的异常数据,从而代替了由用户将异常数据反馈给售后人员,售后人员能够更加及时的获取到手机的异常数据;因此解决了相关技术中人为反馈手机异常的效率较低的问题;达到了提高手机异常的反馈效率,节省人力成本的效果。

本实施例中,由于异常日志被终端重复记录的次数,在一定程度上能够反映终端在运行的过程中,因同一原因导致运行异常的频率,对技术人员决定异常数据的分析顺序具有一定的参考价值,因此终端在将数据库中的异常数据以及各个异常数据对应的异常出现次数上报至服务器。

请参考图3a,其示出了本申请再一个示例性实施例提供的异常数据上报方法的流程图。该异常数据上报方法包括:

步骤301,监测异常日志文件,当监测到异常日志文件更新时,获取最近添加入异常日志文件中的目标异常日志。

步骤302,获取目标异常日志中记录的异常调用栈信息,并获取终端的终端信息,根据异常调用栈信息以及终端信息,生成目标异常数据。

步骤303,判定目标异常数据是否在预存的数据库中,如果目标异常数据不在数据库中,则将异常数据存入数据库中。

步骤304,获取crc信息库,根据目标异常数据生成对应的目标crc值,检测目标crc值是否在crc信息库中。

其中,异常数据对应的crc值可以为终端对该异常数据包括的信息采用某种计算公式得到的值。需要说明的是,本实施例中,并不对计算公式的类型做任何限定。

一个示例性的例子,终端将关键信息罗列显示的值作为crc值为例,目标异常数据包括的异常日志中记载了异常模块为“com.mmt.viso”,异常类型为“sysacrs”,终端信息中记录终端的指纹信息为brand/product/platform/systemversion/systemverison:user/keys,终端的系统版本号为9.1.9.0,异常原因为java.lang.noclassdeffounderror:failedresolutionof:lcom/fingerprints/extension/util/logger。那么,终端会将目标异常数据对应的字符串“com.mmt.viso-sysacrs-brand/product/platform/systemversion/systemverison:user/keys-9.1.9.0-java.lang.noclassdeffounderror:failedresolutionof:lcom/fingerprints/extension/util/logger”生成长整型(longinteger)数值,作为目标异常数据的唯一标识。

在生成目标crc值之后,终端将目标crc值依次与crc信息库中已经存储的crc值比对,来检测该目标crc值是否在crc信息库中。

需要说明的是,终端可以从服务器获取crc信息库,也可以从本地获取crc信息库。其中,终端本地存储的crc信息库定期与服务器的crc信息库同步,即终端将本地存储的crc信息库中新增的crc值上报至服务器,来更新服务器的crc信息库,服务器将存储在本地的crc信息库中新增的crc值下发至终端,来更新终端的crc信息库。

步骤305,如果目标crc值不在crc信息库中,则将目标crc值添加到crc信息库中,并将目标crc值与目标异常日志作为一组对应关系存储在异常日志文件中。

目标crc值不在crc信息库中,说明暂未由其他终端因该目标crc值对应的异常原因导致运行异常,为了保证当服务器后续能获取到该目标crc值对应的目标异常日志,终端需将目标crc值与目标异常日志作为一组对应关系存储在异常日志文件中。

步骤306,如果目标crc值在crc信息库中,则在异常日志文件中删除目标异常日志。

crc值是根据异常日志对应的异常数据生成的,即crc值相同的异常日志也相同。若目标crc值在crc信息库中,说明已经存在终端(可能是该终端也可能是其他终端)因该目标crc值对应的异常原因运行异常,即某个终端的异常日志文件中已存储终端因该异常原因导致运行异常后生成的异常日志。由于当服务器需要获取异常日志时,对于同一类型的异常日志只需获取一份,因此如果目标crc值在crc信息库中,该终端没必要存储该目标crc值对应的目标异常日志。

步骤307,当达到预设上报周期时,将数据库中的数据上报至服务器,并在异常数据上报成功后清空数据库。

需要说明的是,本实施例中步骤301至步骤303与步骤101至步骤103类似,步骤307与步骤104类似,因此本实施例不再对步骤301至步骤303、步骤307赘述说明。

综上所述,本发明实施例提供的异常数据上报方法,通过当监测到终端运行异常时,终端生成异常数据,将生成的异常数据存入数据库,并定期向服务器上报数据库中存储的异常数据,由于终端会定期向服务器主动上报终端在运行异常时生成的异常数据,从而代替了由用户将异常数据反馈给售后人员,售后人员能够更加及时的获取到手机的异常数据;因此解决了相关技术中人为反馈手机异常的效率较低的问题;达到了提高手机异常的反馈效率,节省人力成本的效果。

在一种可能实现的方式中,由于技术人员会根据服务器中的报表信息,配置响应的异常日志上报策略,并通过服务器将异常日志上报策略下发给终端,来获取几种异常数据对应的异常日志进行分析,从而找到相应的解决方案。

请参考图3b,其示出了本申请一个示例性实施例提供的异常日志上报方法的流程图。该异常日志上报方法包括:

步骤s1,接收服务器发送的携带有crc值的异常日志上报策略。

由于crc值是根据异常数据生成,且终端将crc值与异常日志作为一组对应关系存储,因此当技术人员需要获取某个异常数据对应的异常日志时,通过服务器向终端下发携带有该异常数据对应的crc值的异常日志上报策略,由终端根据crc值上报该crc值对应的异常日志即可。

步骤s2,当达到预设上报周期时,在异常日志文件中查找异常日志上报策略中各个crc值分别对应的异常日志,将各个crc值分别对应的异常日志上报至服务器。

由步骤306可知,如果目标crc值在crc信息库中,终端不会存储运行异常后生成的目标异常日志。当达到预设上报周期时,终端会在异常日志文件中查找异常日志上报策略中各个crc值分别对应的异常日志,将本地存储的各个crc值分别对应的异常日志上报纸服务器。

步骤s3,在各个crc值分别对应的异常日志上报成功后,删除被成功上报的异常日志。

在异常日志上报成功后删除本地存储的被成功上报的异常日志的目的之一是为了减少异常日志占用终端的存储空间,目的之二是为了避免终端重复上报已经上报至服务器的异常日志。

需要说明的是,本实施例并不限定步骤s1在步骤101至步骤104、步骤201至步骤206以及步骤301至步骤307中的实施位置。

下述为本发明装置实施例,对于装置实施例中未详尽描述的细节,可以参考上述一一对应的方法实施例。

请参考图4,图4是本发明一个实施例中提供的异常数据上报装置的结构方框图。该异常数据上报装置包括:监测模块401、第一生成模块402、第一存储模块403和第一上报模块404。

监测模块401,用于监测异常日志文件,当监测到异常日志文件更新时,获取最近添加入异常日志文件中的目标异常日志;

第一生成模块402,用于获取目标异常日志中记录的异常调用栈信息,并获取终端的终端信息,根据异常调用栈信息以及终端信息,生成目标异常数据;

第一存储模块403,用于判定目标异常数据是否在预存的数据库中,如果目标异常数据不在数据库中,则将异常数据存入数据库中;

第一上报模块404,用于当达到预设上报周期时,将数据库中的数据上报至服务器,并在异常数据上报成功后清空数据库。

在一种可能的实现方式中该装置还包括:计数模块。

计数模块,用于如果目标异常数据在数据库中,则将数据库中目标异常数据对应的异常出现次数加1;

第一上报模块404,还用于将数据库中的异常数据以及各个异常数据对应的异常出现次数上报至服务器。

在一种可能的实现方式中,该装置还包括:检测模块、第二存储模块和第一删除模块。

检测模块,用于在将异常数据存入数据库中之后,获取crc信息库,根据目标异常数据生成对应的目标crc值,检测目标crc值是否在crc信息库中;

第二存储模块,用于如果目标crc值不在crc信息库中,则将目标crc值添加到crc信息库中,并将目标crc值与目标异常日志作为一组对应关系存储在异常日志文件中;

第一删除模块,用于如果目标crc值在crc信息库中,则在异常日志文件中删除目标异常日志。

在一种可能的实现方式中,该装置还包括:接收模块、第二上报模块和第二删除模块。

接收模块,用于接收服务器发送的携带有crc值的异常日志上报策略;

第二上报模块,用于当达到预设上报周期时,在异常日志文件中查找异常日志上报策略中各个crc值分别对应的异常日志,将各个crc值分别对应的异常日志上报至服务器;

第二删除模块,用于在各个crc值分别对应的异常日志上报成功后,删除被成功上报的异常日志。

在一种可能的实现方式中,该装置还包括:第二生成模块。

第二生成模块,用于当终端运行异常时,在异常日志文件中生成异常日志,运行异常包括系统程序及应用程序异常、系统服务异常以及网络异常中的至少一种。

综上所述,本发明实施例提供的异常数据上报装置,通过当监测到终端运行异常时,终端生成异常数据,将生成的异常数据存入数据库,并定期向服务器上报数据库中存储的异常数据,由于终端会定期向服务器主动上报终端在运行异常时生成的异常数据,从而代替了由用户将异常数据反馈给售后人员,售后人员能够更加及时的获取到手机的异常数据;因此解决了相关技术中人为反馈手机异常的效率较低的问题;达到了提高手机异常的反馈效率,节省人力成本的效果。

本实施例中,由于异常日志被终端重复记录的次数,在一定程度上能够反映终端在运行的过程中,因同一原因导致运行异常的频率,对技术人员决定异常数据的分析顺序具有一定的参考价值,因此终端在将数据库中的异常数据以及各个异常数据对应的异常出现次数上报至服务器。

本实施例中,技术人员会根据服务器中的报表信息,配置响应的异常日志上报策略,并通过服务器将异常日志上报策略下发给终端,来获取几种异常数据对应的异常日志进行分析,从而找到相应的解决方案。

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

图5示出了本发明一个示例性实施例提供的终端500的结构框图。该终端500可以是:智能手机、平板电脑、mp3播放器(movingpictureexpertsgroupaudiolayeriii,动态影像专家压缩标准音频层面3)、mp4(movingpictureexpertsgroupaudiolayeriv,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端500还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。

通常,终端500包括有:处理器501和存储器502。

处理器501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器501可以采用dsp(digitalsignalprocessing,数字信号处理)、fpga(field-programmablegatearray,现场可编程门阵列)、pla(programmablelogicarray,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器501也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称cpu(centralprocessingunit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器501可以在集成有gpu(graphicsprocessingunit,图像处理器),gpu用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器501还可以包括ai(artificialintelligence,人工智能)处理器,该ai处理器用于处理有关机器学习的计算操作。

存储器502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器502中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器501所执行以实现本申请中方法实施例提供的异常数据上报方法。

在一些实施例中,终端500还可选包括有:外围设备接口503和至少一个外围设备。处理器501、存储器502和外围设备接口503之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口503相连。具体地,外围设备包括:射频电路504、触摸显示屏505、摄像头506、音频电路507、定位组件508和电源509中的至少一种。

外围设备接口503可被用于将i/o(input/output,输入/输出)相关的至少一个外围设备连接到处理器501和存储器502。在一些实施例中,处理器501、存储器502和外围设备接口503被集成在同一芯片或电路板上;在一些其他实施例中,处理器501、存储器502和外围设备接口503中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。

射频电路504用于接收和发射rf(radiofrequency,射频)信号,也称电磁信号。射频电路504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路504将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路504包括:天线系统、rf收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路504可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2g、3g、4g及5g)、无线局域网和/或wifi(wirelessfidelity,无线保真)网络。在一些实施例中,射频电路504还可以包括nfc(nearfieldcommunication,近距离无线通信)有关的电路,本申请对此不加以限定。

显示屏505用于显示ui(userinterface,用户界面)。该ui可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏505是触摸显示屏时,显示屏505还具有采集在显示屏505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器501进行处理。此时,显示屏505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏505可以为一个,设置终端500的前面板;在另一些实施例中,显示屏505可以为至少两个,分别设置在终端500的不同表面或呈折叠设计;在再一些实施例中,显示屏505可以是柔性显示屏,设置在终端500的弯曲表面上或折叠面上。甚至,显示屏505还可以设置成非矩形的不规则图形,也即异形屏。显示屏505可以采用lcd(liquidcrystaldisplay,液晶显示屏)、oled(organiclight-emittingdiode,有机发光二极管)等材质制备。

摄像头组件506用于采集图像或视频。可选地,摄像头组件506包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及vr(virtualreality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件506还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。

音频电路507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器501进行处理,或者输入至射频电路504以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端500的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器501或射频电路504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路507还可以包括耳机插孔。

定位组件508用于定位终端500的当前地理位置,以实现导航或lbs(locationbasedservice,基于位置的服务)。定位组件508可以是基于美国的gps(globalpositioningsystem,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。

电源509用于为终端500中的各个组件进行供电。电源509可以是交流电、直流电、一次性电池或可充电电池。当电源509包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。

在一些实施例中,终端500还包括有一个或多个传感器510。该一个或多个传感器510包括但不限于:加速度传感器511、陀螺仪传感器512、压力传感器513、指纹传感器514、光学传感器515以及接近传感器516。

加速度传感器511可以检测以终端500建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器511可以用于检测重力加速度在三个坐标轴上的分量。处理器501可以根据加速度传感器511采集的重力加速度信号,控制触摸显示屏505以横向视图或纵向视图进行用户界面的显示。加速度传感器511还可以用于游戏或者用户的运动数据的采集。

陀螺仪传感器512可以检测终端500的机体方向及转动角度,陀螺仪传感器512可以与加速度传感器511协同采集用户对终端500的3d动作。处理器501根据陀螺仪传感器512采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变ui)、拍摄时的图像稳定、游戏控制以及惯性导航。

压力传感器513可以设置在终端500的侧边框和/或触摸显示屏505的下层。当压力传感器513设置在终端500的侧边框时,可以检测用户对终端500的握持信号,由处理器501根据压力传感器513采集的握持信号进行左右手识别或快捷操作。当压力传感器513设置在触摸显示屏505的下层时,由处理器501根据用户对触摸显示屏505的压力操作,实现对ui界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。

指纹传感器514用于采集用户的指纹,由处理器501根据指纹传感器514采集到的指纹识别用户的身份,或者,由指纹传感器514根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器501授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器514可以被设置终端500的正面、背面或侧面。当终端500上设置有物理按键或厂商logo时,指纹传感器514可以与物理按键或厂商logo集成在一起。

光学传感器515用于采集环境光强度。在一个实施例中,处理器501可以根据光学传感器515采集的环境光强度,控制触摸显示屏505的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏505的显示亮度;当环境光强度较低时,调低触摸显示屏505的显示亮度。在另一个实施例中,处理器501还可以根据光学传感器515采集的环境光强度,动态调整摄像头组件506的拍摄参数。

接近传感器516,也称距离传感器,通常设置在终端500的前面板。接近传感器516用于采集用户与终端500的正面之间的距离。在一个实施例中,当接近传感器516检测到用户与终端500的正面之间的距离逐渐变小时,由处理器501控制触摸显示屏505从亮屏状态切换为息屏状态;当接近传感器516检测到用户与终端500的正面之间的距离逐渐变大时,由处理器501控制触摸显示屏505从息屏状态切换为亮屏状态。

本领域技术人员可以理解,图5中示出的结构并不构成对终端500的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。

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

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

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

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