应用定位处理方法、装置、设备和存储介质与流程

文档序号:29315844发布日期:2022-03-19 21:41阅读:79来源:国知局
应用定位处理方法、装置、设备和存储介质与流程

1.本文件涉及互联网领域,尤其涉及一种应用定位处理方法、装置、设备和存储介质。


背景技术:

2.目前,多数应用程序都能够从手机的操作系统处获取手机的位置信息并加以使用。常规方案中,应用程序每次需要获取位置信息时,都向手机的操作系统发送请求,操作系统基于请求进行定位,将定位结果返回给应用程序。当应用程序在短时间内多次请求获取位置信息时,操作系统需要响应每一次的请求均进行定位,过多的定位操作将极大耗费手机电量,而且这多次的定位结果可能都相同,从而导致重复定位。


技术实现要素:

3.本说明书一个实施例的目的是提供一种应用定位处理方法、装置、设备和存储介质,以解决过多的定位操作耗费手机电量,且,多次的定位结果可能都相同,从而导致重复定位的问题。
4.为解决上述技术问题,本说明书一个实施例是这样实现的:
5.第一方面,本说明书一个实施例提供了一种应用定位处理方法,应用于用户终端,包括:
6.获取目标应用发送的位置信息获取请求,基于所述目标应用的应用类别,判断所述位置信息获取请求是否为冗余请求;
7.若确定是冗余请求,则拦截所述位置信息获取请求,若确定不是冗余请求,则确定所述位置信息获取请求对应的位置信息精度级别;
8.判断是否缓存有与所述位置信息精度级别相对应的有效位置信息;
9.若缓存有,则将缓存的所述有效位置信息返回至所述目标应用,若未缓存有,则向所述用户终端的操作系统请求位置信息,基于请求得到的位置信息,向所述目标应用返回与所述位置信息精度级别相对应的有效位置信息。
10.第二方面,本说明书另一个实施例提供了一种应用定位处理装置,应用于用户终端,包括:
11.请求判断单元,用于获取目标应用发送的位置信息获取请求,基于所述目标应用的应用类别,判断所述位置信息获取请求是否为冗余请求;
12.请求处理单元,用于若确定是冗余请求,则拦截所述位置信息获取请求,若确定不是冗余请求,则确定所述位置信息获取请求对应的位置信息精度级别;
13.缓存判断单元,用于判断是否缓存有与所述位置信息精度级别相对应的有效位置信息;
14.信息返回单元,用于若缓存有,则将缓存的所述有效位置信息返回至所述目标应用,若未缓存有,则向所述用户终端的操作系统请求位置信息,基于请求得到的位置信息,
向所述目标应用返回与所述位置信息精度级别相对应的有效位置信息。
15.第三方面,本说明书又一个实施例提供了一种应用定位处理设备,包括:存储器、处理器和存储在所述存储器上并可在所述处理器上运行的计算机可执行指令,所述计算机可执行指令被所述处理器执行时实现如上述第一方面所述的应用定位处理方法的步骤。
16.第四方面,本说明书再一个实施例提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机可执行指令,所述计算机可执行指令被处理器执行时实现如上述第一方面所述的应用定位处理方法的步骤。
17.在本说明书一个实施例中,获取目标应用发送的位置信息获取请求后,首先基于目标应用的应用类别,判断该位置信息获取请求是否为冗余请求,若是,则拦截该位置信息获取请求,若不是,则确定该位置信息获取请求对应的位置信息精度级别,接着判断是否缓存有与该位置信息精度级别相对应的有效位置信息,若缓存有,则将缓存的有效位置信息返回至目标应用,若未缓存有,则向用户终端的操作系统请求位置信息,基于请求得到的位置信息,向目标应用返回与上述位置信息精度级别相对应的有效位置信息。可见,本实施例中,能够识别出目标应用发送的冗余的位置信息获取请求并拦截,并能够在缓存的位置信息满足目标应用的要求时,向目标应用返回缓存的位置信息,不再从用户终端的操作系统处请求位置信息,从而避免用户终端执行过多的定位操作,节省用户终端的耗电量,而且,避免用户终端执行的多次定位操作的定位结果都相同,避免重复定位的问题。
附图说明
18.为了更清楚地说明本说明书一个或多个实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
19.图1为本说明书一实施例提供的应用定位处理方法的流程示意图;
20.图2为本说明书一实施例提供的判断目标应用发送的位置信息获取请求是否为冗余请求的流程示意图;
21.图3为本说明书另一实施例提供的判断目标应用发送的位置信息获取请求是否为冗余请求的流程示意图;
22.图4为本说明书一实施例提供的确定位置信息获取请求对应的位置信息精度级别的流程示意图;
23.图5为本说明书一实施例提供的判断是否缓存有有效位置信息的流程示意图;
24.图6为本说明书一实施例提供的向目标应用返回与上述位置信息精度级别相对应的有效位置信息的流程示意图;
25.图7为本说明书一实施例提供的应用定位处理装置的模块组成示意图;
26.图8为本说明书一实施例提供的应用定位处理设备的结构示意图。
具体实施方式
27.为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术
方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。
28.本说明书一实施例提供了一种应用定位处理方法,该方法应用于用户终端,由用户终端执行,该用户终端包括但不限于手机、电脑、平板电脑、笔记本电脑、车载电脑、可穿戴设备等具有定位功能的电子设备。
29.图1为本说明书一实施例提供的应用定位处理方法的流程示意图,如图1所示,该方法包括以下步骤:
30.步骤s102,获取目标应用发送的位置信息获取请求,基于目标应用的应用类别,判断该位置信息获取请求是否为冗余请求;
31.步骤s104,若确定是冗余请求,则拦截该位置信息获取请求,若确定不是冗余请求,则确定该位置信息获取请求对应的位置信息精度级别;
32.步骤s106,判断是否缓存有与该位置信息精度级别相对应的有效位置信息;
33.步骤s108,若缓存有,则将缓存的有效位置信息返回至目标应用,若未缓存有,则向用户终端的操作系统请求位置信息,基于请求得到的位置信息,向目标应用返回与上述位置信息精度级别相对应的有效位置信息。
34.本实施例中,获取目标应用发送的位置信息获取请求后,首先基于目标应用的应用类别,判断该位置信息获取请求是否为冗余请求,若是,则拦截该位置信息获取请求,若不是,则确定该位置信息获取请求对应的位置信息精度级别,接着判断是否缓存有与该位置信息精度级别相对应的有效位置信息,若缓存有,则将缓存的有效位置信息返回至目标应用,若未缓存有,则向用户终端的操作系统请求位置信息,基于请求得到的位置信息,向目标应用返回与上述位置信息精度级别相对应的有效位置信息。可见,本实施例中,能够识别出目标应用发送的冗余的位置信息获取请求并拦截,并能够在缓存的位置信息满足目标应用的要求时,向目标应用返回缓存的位置信息,不再从用户终端的操作系统处请求位置信息,从而避免用户终端执行过多的定位操作,节省用户终端的耗电量,而且,避免用户终端执行的多次定位操作的定位结果都相同,避免重复定位的问题。
35.用户终端中设置有智能定位服务,该智能定位服务一方面可以与用户终端的操作系统通信,另一方面可以与用户终端中的各个应用程序通信,图1中的流程能够由该智能定位服务执行,下面介绍图1中的流程的具体过程。
36.上述步骤s102中,智能定位服务获取目标应用发送的位置信息获取请求。目标应用可以是用户终端内的任意一个应用程序,这里不做限制。目标应用发送给用户终端的操作系统的位置信息获取请求被智能定位服务所拦截,从而智能定位服务获取目标应用发送的位置信息获取请求。接着,智能定位服务基于目标应用的应用类别,判断目标应用发送的位置信息获取请求是否为冗余请求。
37.图2为本说明书一实施例提供的判断目标应用发送的位置信息获取请求是否为冗余请求的流程示意图,如图2所示,在一个实施例中,基于目标应用的应用类别,判断目标应用发送的位置信息获取请求是否为冗余请求,具体为:
38.步骤s202,若目标应用为出行类应用,则确定上述位置信息获取请求不是冗余请求,若目标应用不为出行类应用,则获取目标应用所在的应用类别针对位置信息的预设请
求频率阈值;
39.步骤s204,若第一预设时间范围内目标应用针对位置信息的请求频率大于预设请求频率阈值,则确定上述位置信息获取请求是冗余请求,否则,确定上述位置信息获取请求不是冗余请求。
40.首先,可以从应用商店或者从目标应用的描述信息中,获取目标应用的类别信息,从而确定目标应用的应用类别。接着,判断目标应用是否为出行类应用,出行类应用包括但不限于导航、地图等应用。若确定目标应用为出行类应用,考虑到出行类应用获取位置信息具有其重要性和必要性,因此确定上述的位置信息获取请求不是冗余请求。若确定目标应用不为出行类应用,则获取目标应用所在的应用类别针对位置信息的预设请求频率阈值,该预设请求频率阈值用于表示目标应用所在的应用类别中的各个应用程序的合理的位置请求频率,若在该应用类别中的某一应用,向用户终端的操作系统请求位置信息的频率大于该预设请求频率阈值,则说明该应用位置请求过于频繁,存在冗余请求。可以理解的是,每个应用类别均对应一个针对位置信息的预设请求频率阈值,在对各个应用分类时,可以从应用商店中获取各个应用的类别描述信息,进而确定各个应用的应用类别。
41.接着,获取目标应用在第一预设时间范围内针对位置信息的请求频率。该第一预设时间范围可以举例为,智能定位服务在拦截到目标应用发送的位置信息获取请求时,开始计算的之前一个小时内或者之前一定时长内。若第一预设时间范围内目标应用针对位置信息的请求频率,大于,上述的目标应用所在的应用类别针对位置信息的预设请求频率阈值,则说明在一段时长内目标应用向用户终端请求位置信息的频率过高,因此确定本次的位置信息获取请求为冗余请求。反之,若第一预设时间范围内目标应用针对位置信息的请求频率,小于等于,上述的目标应用所在的应用类别针对位置信息的预设请求频率阈值,则说明在一段时长内目标应用向用户终端请求位置信息的频率合理,因此确定本次的位置信息获取请求不是冗余请求。
42.本实施例中,通过判断第一预设时间范围内目标应用针对位置信息的请求频率是否大于相应的预设请求频率阈值,能够准确识别出目标应用的冗余请求,从而减少用户终端由于定位操作所带来的耗电量。
43.图3为本说明书另一实施例提供的判断目标应用发送的位置信息获取请求是否为冗余请求的流程示意图,如图3所示,在其他一个实施例中,与上述的方式类似,基于目标应用的应用类别,判断目标应用发送的位置信息获取请求是否为冗余请求,具体为:
44.步骤s302,若目标应用为出行类应用,则确定上述位置信息获取请求不是冗余请求,若目标应用不为出行类应用,则判断是否在第二预设时间范围内向目标应用返回过位置信息精度级别低于既定级别的位置信息;
45.步骤s304,若返回过,则确定上述位置信息获取请求不是冗余请求,若没有返回过,则获取目标应用所在的应用类别针对位置信息的预设请求频率阈值;
46.步骤s306,若第一预设时间范围内目标应用针对位置信息的请求频率大于预设请求频率阈值,则确定上述位置信息获取请求是冗余请求,否则,确定上述位置信息获取请求不是冗余请求。
47.首先,与前面的方式类似,若确定目标应用为出行类应用,则确定上述的位置信息获取请求不是冗余请求。若确定目标应用不为出行类应用,则判断是否在第二预设时间范
围内向目标应用返回过位置信息精度级别低于既定级别的位置信息。
48.第二预设时间范围可以举例为,智能定位服务在拦截到目标应用发送的位置信息获取请求时,开始计算的之前5秒内或3秒内,第二预设时间范围对应的时间长度小于第一预设时间范围对应的时间长度,通常可以设置为几秒。位置信息精度级别用于描述位置信息的精度,在位置信息为经纬度信息时,可以通过小数点后的位数表示位置信息精度级别,位置信息精度级别越高,小数点后的位数越多。既定级别可以为预设级别,既定级别可以表示相应的位置精度,比如既定级别表示小数点后2位对应的经纬度精度。若在第二预设时间范围内向目标应用返回过位置信息精度级别低于既定级别的位置信息,比如返回过只标注到了小数点后1位的经纬度信息,则说明返回的位置信息精度过低,目标应用本次可能是在请求精度更高的位置信息。
49.基于此,若在第二预设时间范围内向目标应用返回过位置信息精度级别低于既定级别的位置信息,则确定上述的位置信息获取请求不是冗余请求,是为了请求位置信息精度级别更高的位置信息。相反地,若没有在第二预设时间范围内向目标应用返回过位置信息精度级别低于既定级别的位置信息,则与前面的类似,获取目标应用所在的应用类别针对位置信息的预设请求频率阈值,以及,获取目标应用在第一预设时间范围内针对位置信息的请求频率。
50.与前文类似,若第一预设时间范围内目标应用针对位置信息的请求频率,大于,上述的目标应用所在的应用类别针对位置信息的预设请求频率阈值,则确定本次的位置信息获取请求为冗余请求。反之,若第一预设时间范围内目标应用针对位置信息的请求频率,小于等于,上述的目标应用所在的应用类别针对位置信息的预设请求频率阈值,则确定本次的位置信息获取请求不是冗余请求。
51.本实施例中,通过判断是否在第二预设时间范围内向目标应用返回过位置信息精度级别低于既定级别的位置信息,能够准确识别出目标应用为了获取精度更高的位置信息的情况,从而准确向目标应用返回需要的位置信息。
52.上面提供了两种基于目标应用的应用类别,判断目标应用发送的位置信息获取请求是否为冗余请求的方式。本实施例中,通过分析位置信息获取请求是否为冗余请求,并在为冗余请求的情况下拦截该位置信息获取请求,在不为冗余请求的情况下继续图1中的流程,能够避免用户终端执行冗余定位操作,节省用户终端的耗电量。
53.上述步骤s104中,若确定是冗余请求,则拦截该位置信息获取请求。具体地,智能定位服务可以在接收该位置信息获取请求后,不向目标应用返回任何信息,也即不响应该请求,或者,向目标应用返回空值,从而达到拦截该位置信息获取请求的效果。若确定不是冗余请求,则智能定位服务确定该位置信息获取请求对应的位置信息精度级别。
54.位置信息精度级别用于表示位置信息的精度,该位置信息精度级别可以通过小数点之后的位数来表示,比如,某一位置信息精度级别表示小数点后2位对应的经纬度精度。位置信息获取请求对应的位置信息精度级别,指的是,该位置信息获取请求所请求的位置信息的位置信息精度级别。
55.图4为本说明书一实施例提供的确定位置信息获取请求对应的位置信息精度级别的流程示意图,如图4所示,在一个实施例中,确定上述的位置信息获取请求对应的位置信息精度级别,具体为:
56.步骤s402,若目标应用为出行类应用,则确定位置信息精度级别为最高级别,若目标应用不为出行类应用,则判断是否在第二预设时间范围内向目标应用返回过位置信息;
57.步骤s404,若返回过,则确定位置信息精度级别高于前次向目标应用返回的位置信息的位置信息精度级别,若未返回过,则判断是否记录有目标应用所在的应用类别对应的标准位置信息精度级别;
58.步骤s406,若记录有,则将记录的标准位置信息精度级别作为上述位置信息获取请求对应的位置信息精度级别,若未记录有,则将默认位置信息精度级别作为上述位置信息获取请求对应的位置信息精度级别。
59.可以从应用商店等处获取目标应用的应用类别,若目标应用为出行类应用,比如为导航或者地图类应用,则确定位置信息获取请求对应的位置信息精度级别为最高级别,也即基于位置信息获取请求向目标应用返回精度最高的位置信息,使得地图或导航应用可以更好地为用户服务。其中,用户终端的操作系统定位得到的位置信息,通常作为精度最高的位置信息。若目标应用不为出行类应用,则判断是否在第二预设时间范围内向目标应用返回过位置信息。该第二预设时间范围与前文的第二预设时间范围为同一概念,这一动作可以和前文的动作相同,判断是否在第二预设时间范围内向目标应用返回过位置信息精度级别低于既定级别的位置信息。
60.若返回过,则说明前次返回的位置信息精度过低,目标应用本次可能是在请求精度更高的位置信息,因此确定位置信息获取请求对应的位置信息精度级别高于前次向目标应用返回的位置信息的位置信息精度级别,从而基于位置信息获取请求向目标应用返回精度更高的位置信息。若没有返回过,则判断是否记录有目标应用所在的应用类别对应的标准位置信息精度级别。
61.本实施例中,可以确定除了出行类以外的其他类应用对应的标准位置信息精度级别,具体确定过程将在后文详细描述。若判断结果表示记录有目标应用所在的应用类别对应的标准位置信息精度级别,则将记录的标准位置信息精度级别作为上述位置信息获取请求对应的位置信息精度级别,以便于按照该位置信息精度级别向目标应用返回位置信息,若确定未记录有,则获取预先存储的默认位置信息精度级别,将默认位置信息精度级别作为上述位置信息获取请求对应的位置信息精度级别,以便于按照默认位置信息精度级别向目标应用返回位置信息。
62.通常情况下,能够确定除了出行类以外的其他类应用对应的标准位置信息精度级别,当目标应用请求位置信息时,若目标应用不是出行类应用,则基于目标应用对应的标准位置信息精度级别向目标应用返回位置信息。在某些情况下,没能成功确定目标应用所在的应用类别对应的标准位置信息精度级别,那么就可以将预先设置的默认位置信息精度级别作为目标应用对应的位置信息精度级别,基于此级别向目标应用返回位置信息。其中,默认位置信息精度级别能够是预先设置好的级别。
63.在确定上述位置信息获取请求对应的位置信息精度级别之后,步骤s106中,判断是否缓存有与该位置信息精度级别相对应的有效位置信息。图5为本说明书一实施例提供的判断是否缓存有有效位置信息的流程示意图,如图5所示,在一个实施例中,判断是否缓存有与上述位置信息精度级别相对应的有效位置信息,具体为:
64.步骤s502,判断是否缓存有满足上述位置信息精度级别的位置信息;
65.步骤s504,若未缓存有,则确定未缓存有与上述位置信息精度级别相对应的有效位置信息,若缓存有,则根据用户终端的移动速度和定位得到缓存的位置信息的时间,判断缓存的位置信息是否失效;
66.步骤s506,若失效,则确定未缓存有与上述位置信息精度级别相对应的有效位置信息,若未失效,则确定缓存有与上述位置信息精度级别相对应的有效位置信息。
67.首先,判断是否缓存有满足上述位置信息精度级别的位置信息。比如,上述位置信息精度级别要求位置信息是经纬度时,要精确到小数点后4位,则查看缓存中是否缓存有精确到小数点后4位的经纬度信息。
68.若未缓存有,则说明一种情况下没有缓存位置信息,另一种情况下缓存的位置信息达不到或者超过了上述位置信息精度级别的要求,因此,确定未缓存有与上述位置信息精度级别相对应的有效位置信息。若缓存有,则考虑到用户终端若短时间内移动过较长距离,则该缓存的位置信息可能会失效,因此根据用户终端的移动速度和定位得到缓存的位置信息的时间,判断缓存的位置信息是否失效。
69.这里可以预设位置信息的失效规则,比如,当用户终端的移动速度小于v1且定位得到缓存的位置信息的时间距离当前时间不超过时长t1时,确定缓存的位置信息不会失效,当用户终端的移动速度大于等于v1小于v2且定位得到缓存的位置信息的时间距离当前时间不超过时长t2时,确定缓存的位置信息不会失效,当用户终端的移动速度大于等于v3时,无论何时定位得到的位置信息,都确定缓存的位置信息失效。基于预设的失效规则,结合用户终端的移动速度和定位得到缓存的位置信息的时间,判断缓存的位置信息是否失效。
70.若失效,则同样确定未缓存有与上述位置信息精度级别相对应的有效位置信息,若未失效,则确定缓存有与上述位置信息精度级别相对应的有效位置信息。
71.本实施例中,结合用户终端的移动速度和定位得到缓存的位置信息的时间,判断缓存的位置信息是否失效,考虑到了用户终端的移动情况和数据缓存时长对用户终端位置准确程度的影响,达到了准确判断缓存的位置信息是否失效的效果。
72.上述步骤s108中,若确定缓存有与上述位置信息精度级别相对应的有效位置信息,则将缓存的有效位置信息返回至目标应用,从而使得在不需要用户终端操作系统执行定位操作的情况下,在不需要额外耗电的情况下,就能够向目标应用返回所需要的精度级别的位置信息。反之,若确定未缓存有与上述位置信息精度级别相对应的有效位置信息,则向用户终端的操作系统请求位置信息,基于请求得到的位置信息,向目标应用返回与上述位置信息精度级别相对应的有效位置信息。
73.图6为本说明书一实施例提供的向目标应用返回与上述位置信息精度级别相对应的有效位置信息的流程示意图,如图6所示,该过程具体包括:
74.步骤s602,根据请求得到的位置信息的精度级别和上述位置信息获取请求对应的位置信息精度级别,确定对请求得到的位置信息的处理方式;
75.步骤s604,基于该处理方式,对请求得到的位置信息进行处理,得到与上述位置信息精度级别相对应的有效位置信息;
76.步骤s606,将该有效位置信息返回至目标应用。
77.具体地,通常向操作系统请求位置信息时,操作系统都会返回精确度较高的位置
信息,通常是返回操作系统所能够定位得到的最为精确的位置信息(也即前面说的最高级别)。在得到操作系统返回的位置信息后,根据请求得到的位置信息的精度级别,和,上述位置信息获取请求对应的位置信息精度级别,确定对请求得到的位置信息的处理方式。
78.比如,操作系统返回的经纬度精确到小数点后6位,上述位置信息获取请求对应的位置信息精度级别要求经纬度精确到小数点后2位,因此确定对请求得到的位置信息的处理方式为:通过四舍五入的方式省略小数点最后4位。当然,若请求得到的位置信息的精度级别小于上述位置信息获取请求对应的位置信息精度级别,则将无法对请求得到的位置信息进行处理,此时智能定位服务可以做报错处理。比如,操作系统返回的经纬度精确到小数点后2位,上述位置信息获取请求对应的位置信息精度级别要求经纬度精确到小数点后6位,则将无法对请求得到的位置信息进行处理,此时智能定位服务可以做报错处理。
79.在确定对请求得到的位置信息的处理方式之后,基于该处理方式,对请求得到的位置信息进行处理,得到与上述位置信息精度级别相对应的有效位置信息。比如,对请求得到的位置信息的最后四位做四舍五入处理,得到与上述位置信息精度级别相对应的有效位置信息。
80.最后,将处理得到的有效位置信息发送给目标应用,从而基于实时定位并数据处理的方式,满足目标应用的定位需求,保证目标应用的正常运行。
81.在一个实施例中,在获取到目标应用发送的位置信息获取请求之后,判断用户终端是否处于预设的非工作模式,若是,则拦截该位置信息获取请求,若不是,则执行基于目标应用的应用类别,判断该位置信息获取请求是否为冗余请求的步骤。
82.其中,预设的非工作模式可以是锁屏模式,还可以是未锁屏模式下一定时长内没有用户操作,比如未锁屏模式下十分钟内没有用户操作。当确定用户终端处于非工作模式下,可以确定用户终端没有定位的需求,因此拦截该位置信息获取请求,比如不响应该位置信息获取请求或者向目标应用返回空值。当确定用户终端没有处于非工作模式下,则执行基于目标应用的应用类别,判断该位置信息获取请求是否为冗余请求的步骤。
83.前面描述过可以对每个类别的应用计算一个相应的预设请求频率阈值,该预设请求频率阈值用于表示相应应用类别中的各个应用程序的合理的位置请求频率。以目标应用所在的应用类别为例,在一个实施例中,智能定位服务可以通过如下的方式计算目标应用所在的应用类别针对位置信息的预设请求频率阈值,能够理解,其他应用类别对应的预设请求频率阈值也可以通过相同的方法计算得到:
84.(1)统计目标应用所在的应用类别中的各个应用,在预设时长内针对位置信息的历史请求频率;
85.(2)基于该历史请求频率,确定目标应用所在的应用类别针对位置信息的预设请求频率阈值。
86.预设时长可以举例为统计历史请求频率这一动作执行前的24小时内。统计目标应用所在的应用类别中的每个应用,在当前时间之前的24小时内针对位置信息的历史请求频率,其中,每个应用均对应一个历史请求频率。这里所说的目标应用所在的应用类别中的每个应用,可以是应用商店中的每个应用,不要求用户终端全部安装每个应用。可以从网络上获取或者通过其他方式获取目标应用所在的应用类别中的每个应用,在当前时间之前的24小时内针对位置信息的历史请求频率。
87.接着,对每个应用的历史请求频率求平均值,得到目标应用所在的应用类别针对位置信息的预设请求频率阈值。在一个实施例中,可以在每天的0点统计前一天24小时内目标应用所在的应用类别中的每个应用针对位置信息的历史请求频率,并计算各个应用的历史请求频率求的平均值,作为新的一天目标应用所在的应用类别针对位置信息的预设请求频率阈值,并重复在下一个0点重新计算目标应用所在的应用类别针对位置信息的预设请求频率阈值,以达到每天更新预设请求频率阈值的效果。
88.通过对类别内各个应用的历史请求频率做均值化处理得到相应应用类别的针对位置信息的预设请求频率阈值,能够使得预设请求频率阈值可以表示相应应用类别的合理的位置信息的请求频率,从而基于该预设请求频率阈值判断目标应用的位置信息获取请求是否为冗余请求。
89.前文提到了需要计算目标应用所在的应用类别对应的标准位置信息精度级别,在一个实施例中,智能定位服务可以通过以下方式计算目标应用所在的应用类别对应的标准位置信息精度级别,能够理解,其他应用类别对应的标准位置信息精度级别也可以通过相同的方法计算得到:
90.(1)确定目标应用所在的应用类别中的各个应用,历史使用的位置信息的精度级别;
91.(2)基于目标应用所在的应用类别中的各个应用,历史使用的位置信息的精度级别,确定目标应用所在的应用类别对应的标准位置信息精度级别。
92.首先,确定目标应用所在的应用类别中的各个应用,历史使用的位置信息的精度级别,以位置信息是经纬度为例,该精度级别可以用小数点后面保留的位数表示,级别数等于位数,位数越多,级别越高。这里所说的目标应用所在的应用类别中的每个应用,可以是应用商店中的每个应用,不要求用户终端全部安装每个应用。可以从网络上获取或者通过其他方式获取目标应用所在的应用类别中的每个应用,历史使用的位置信息的精度级别。
93.然后,计算目标应用所在的应用类别中的各个应用,历史使用的位置信息的精度级别的平均值,根据平均值确定目标应用所在的应用类别对应的标准位置信息精度级别。
94.比如,目标应用所在的应用类别中有abc三个应用,精度级别分别为3、4、5,则平均值为4,将精度级别4作为目标应用所在的应用类别对应的标准位置信息精度级别。又如,目标应用所在的应用类别中有abc三个应用,a使用过30次的精度级别为3的位置信息,使用过10次精度级别为4的位置信息,b使用过30次的精度级别为4的位置信息,使用过10次精度级别为5的位置信息,c使用过10次精度级别为5的位置信息,则平均值等于(30*3+10*4+30*4+10*5+10*5)/(30+10+30+10+10)=3.89,则精度级别四舍五入为4,将精度级4作为目标应用所在的应用类别对应的标准位置信息精度级别。
95.在一个实施例中,也可以由用户自定义设置每个应用对应的预设请求频率阈值和标准位置信息精度级别,以及设置每个应用是否具有定位权限等。上述方法过程均由用户终端内部的智能定位服务执行,能够理解,该智能定位服务可以注册在用户终端中,也可以从用户终端中解除注册。
96.下面通过两个具体的例子说明上述介绍的方法流程的应用效果。
97.场景举例1:
98.智能定位服务使用者小王,在小王驾车使用应用导航的情况下,智能定位服务没
有拦截导航应用的定位请求,小王在驾车途中没有遇到导航定位不准确的情况。在导航过程中,智能定位服务获取了其他类应用的定位请求,并将缓存的导航类应用的定位信息返回给其他类应用,避免了操作系统对其他类应用的定位请求进行处理,降低了手机耗电量。
99.场景举例2:
100.智能定位服务使用者小王,在网购类应用中购物、在消费类应用中订餐等操作,定位均正常使用,没有影响到用户正常使用,但是智能定位服务又拦截了很多冗余定位请求,对冗余定位请求返回空值,大大降低了手机耗电量,提高了手机使用时间。
101.综上,通过本实施例,能够识别出目标应用发送的冗余的位置信息获取请求并拦截,并能够在缓存的位置信息满足目标应用的要求时,向目标应用返回缓存的位置信息,不再从用户终端的操作系统处请求位置信息,从而避免用户终端执行过多的定位操作,节省用户终端的耗电量,而且,避免用户终端执行的多次定位操作的定位结果都相同,避免重复定位的问题。
102.图7为本说明书一实施例提供的应用定位处理装置的模块组成示意图,如图7所示,该装置应用于用户终端,包括:
103.请求判断单元71,用于获取目标应用发送的位置信息获取请求,基于所述目标应用的应用类别,判断所述位置信息获取请求是否为冗余请求;
104.请求处理单元72,用于若确定是冗余请求,则拦截所述位置信息获取请求,若确定不是冗余请求,则确定所述位置信息获取请求对应的位置信息精度级别;
105.缓存判断单元73,用于判断是否缓存有与所述位置信息精度级别相对应的有效位置信息;
106.信息返回单元74,用于若缓存有,则将缓存的所述有效位置信息返回至所述目标应用,若未缓存有,则向所述用户终端的操作系统请求位置信息,基于请求得到的位置信息,向所述目标应用返回与所述位置信息精度级别相对应的有效位置信息。
107.可选地,所述请求判断单元具体用于:若所述目标应用为出行类应用,则确定所述位置信息获取请求不是冗余请求,若所述目标应用不为出行类应用,则获取所述目标应用所在的应用类别针对位置信息的预设请求频率阈值;若第一预设时间范围内所述目标应用针对位置信息的请求频率大于所述预设请求频率阈值,则确定所述位置信息获取请求是冗余请求,否则,确定所述位置信息获取请求不是冗余请求。
108.可选地,所述请求处理单元具体用于:若所述目标应用为出行类应用,则确定所述位置信息精度级别为最高级别,若所述目标应用不为出行类应用,则判断是否在第二预设时间范围内向所述目标应用返回过位置信息;若返回过,则确定所述位置信息精度级别高于前次向所述目标应用返回的位置信息的位置信息精度级别,若未返回过,则判断是否记录有所述目标应用所在的应用类别对应的标准位置信息精度级别;若记录有,则将记录的标准位置信息精度级别作为所述位置信息获取请求对应的位置信息精度级别,若未记录有,则将默认位置信息精度级别作为所述位置信息获取请求对应的位置信息精度级别。
109.可选地,所述缓存判断单元具体用于:判断是否缓存有满足所述位置信息精度级别的位置信息;若未缓存有,则确定未缓存有与所述位置信息精度级别相对应的有效位置信息,若缓存有,则根据所述用户终端的移动速度和定位得到缓存的位置信息的时间,判断缓存的位置信息是否失效;若失效,则确定未缓存有与所述位置信息精度级别相对应的有
效位置信息,若未失效,则确定缓存有与所述位置信息精度级别相对应的有效位置信息。
110.可选地,所述信息返回单元具体用于:根据请求得到的位置信息的精度级别和所述位置信息获取请求对应的位置信息精度级别,确定对请求得到的位置信息的处理方式;基于所述处理方式,对请求得到的位置信息进行处理,得到与所述位置信息精度级别相对应的有效位置信息;将所述有效位置信息返回至所述目标应用。
111.可选地,所述装置还包括模式判断单元,用于:在获取到所述目标应用发送的位置信息获取请求之后,判断所述用户终端是否处于预设的非工作模式;若是,则拦截所述位置信息获取请求,若不是,则执行基于所述目标应用的应用类别,判断所述位置信息获取请求是否为冗余请求的步骤。
112.可选地,所述装置还包括阈值确定单元,用于:统计所述目标应用所在的应用类别中的各个应用,在预设时长内针对位置信息的历史请求频率;基于所述历史请求频率,确定所述目标应用所在的应用类别针对位置信息的预设请求频率阈值。
113.可选地,所述装置还包括级别确定单元,用于:确定所述目标应用所在的应用类别中的各个应用,历史使用的位置信息的精度级别;基于所述目标应用所在的应用类别中的各个应用,历史使用的位置信息的精度级别,确定所述目标应用所在的应用类别对应的标准位置信息精度级别。
114.本实施例中,能够识别出目标应用发送的冗余的位置信息获取请求并拦截,并能够在缓存的位置信息满足目标应用的要求时,向目标应用返回缓存的位置信息,不再从用户终端的操作系统处请求位置信息,从而避免用户终端执行过多的定位操作,节省用户终端的耗电量,而且,避免用户终端执行的多次定位操作的定位结果都相同,避免重复定位的问题。
115.本说明书一实施例提供的应用定位处理装置能够实现前述应用定位处理方法实施例中的各个过程,并达到相同的功能和效果,这里不再重复。
116.进一步地,本说明书一个实施例还提供了一种应用定位处理设备,图8为本说明书一实施例提供的应用定位处理设备的结构示意图,如图8所示,该设备包括:存储器801、处理器802、总线803和通信接口804。存储器801、处理器802和通信接口804通过总线803进行通信,通信接口804可以包括输入输出接口,输入输出接口包括但不限于键盘、鼠标、显示器、麦克风、扩音器等。
117.图8中,所述存储器801上存储有可在所述处理器802上运行的计算机可执行指令,所述计算机可执行指令被所述处理器802执行时实现以下流程:
118.获取目标应用发送的位置信息获取请求,基于所述目标应用的应用类别,判断所述位置信息获取请求是否为冗余请求;
119.若确定是冗余请求,则拦截所述位置信息获取请求,若确定不是冗余请求,则确定所述位置信息获取请求对应的位置信息精度级别;
120.判断是否缓存有与所述位置信息精度级别相对应的有效位置信息;
121.若缓存有,则将缓存的所述有效位置信息返回至所述目标应用,若未缓存有,则向所述用户终端的操作系统请求位置信息,基于请求得到的位置信息,向所述目标应用返回与所述位置信息精度级别相对应的有效位置信息。
122.可选地,所述计算机可执行指令被所述处理器执行时,基于所述目标应用的应用
类别,判断所述位置信息获取请求是否为冗余请求,包括:若所述目标应用为出行类应用,则确定所述位置信息获取请求不是冗余请求,若所述目标应用不为出行类应用,则获取所述目标应用所在的应用类别针对位置信息的预设请求频率阈值;若第一预设时间范围内所述目标应用针对位置信息的请求频率大于所述预设请求频率阈值,则确定所述位置信息获取请求是冗余请求,否则,确定所述位置信息获取请求不是冗余请求。
123.可选地,所述计算机可执行指令被所述处理器执行时,确定所述位置信息获取请求对应的位置信息精度级别,包括:若所述目标应用为出行类应用,则确定所述位置信息精度级别为最高级别,若所述目标应用不为出行类应用,则判断是否在第二预设时间范围内向所述目标应用返回过位置信息;若返回过,则确定所述位置信息精度级别高于前次向所述目标应用返回的位置信息的位置信息精度级别,若未返回过,则判断是否记录有所述目标应用所在的应用类别对应的标准位置信息精度级别;若记录有,则将记录的标准位置信息精度级别作为所述位置信息获取请求对应的位置信息精度级别,若未记录有,则将默认位置信息精度级别作为所述位置信息获取请求对应的位置信息精度级别。
124.可选地,所述计算机可执行指令被所述处理器执行时,判断是否缓存有与所述位置信息精度级别相对应的有效位置信息,包括:判断是否缓存有满足所述位置信息精度级别的位置信息;若未缓存有,则确定未缓存有与所述位置信息精度级别相对应的有效位置信息,若缓存有,则根据所述用户终端的移动速度和定位得到缓存的位置信息的时间,判断缓存的位置信息是否失效;若失效,则确定未缓存有与所述位置信息精度级别相对应的有效位置信息,若未失效,则确定缓存有与所述位置信息精度级别相对应的有效位置信息。
125.可选地,所述计算机可执行指令被所述处理器执行时,基于请求得到的位置信息,向所述目标应用返回与所述位置信息精度级别相对应的有效位置信息,包括:根据请求得到的位置信息的精度级别和所述位置信息获取请求对应的位置信息精度级别,确定对请求得到的位置信息的处理方式;基于所述处理方式,对请求得到的位置信息进行处理,得到与所述位置信息精度级别相对应的有效位置信息;将所述有效位置信息返回至所述目标应用。
126.可选地,所述计算机可执行指令被所述处理器执行时,还包括:在获取到所述目标应用发送的位置信息获取请求之后,判断所述用户终端是否处于预设的非工作模式;若是,则拦截所述位置信息获取请求,若不是,则执行基于所述目标应用的应用类别,判断所述位置信息获取请求是否为冗余请求的步骤。
127.可选地,所述计算机可执行指令被所述处理器执行时,还包括:统计所述目标应用所在的应用类别中的各个应用,在预设时长内针对位置信息的历史请求频率;基于所述历史请求频率,确定所述目标应用所在的应用类别针对位置信息的预设请求频率阈值。
128.可选地,所述计算机可执行指令被所述处理器执行时,还包括:确定所述目标应用所在的应用类别中的各个应用,历史使用的位置信息的精度级别;基于所述目标应用所在的应用类别中的各个应用,历史使用的位置信息的精度级别,确定所述目标应用所在的应用类别对应的标准位置信息精度级别。
129.本实施例中,能够识别出目标应用发送的冗余的位置信息获取请求并拦截,并能够在缓存的位置信息满足目标应用的要求时,向目标应用返回缓存的位置信息,不再从用户终端的操作系统处请求位置信息,从而避免用户终端执行过多的定位操作,节省用户终
端的耗电量,而且,避免用户终端执行的多次定位操作的定位结果都相同,避免重复定位的问题。
130.本说明书一实施例提供的应用定位处理设备能够实现前述应用定位处理方法实施例中的各个过程,并达到相同的功能和效果,这里不再重复。
131.进一步地,本说明书另一个实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机可执行指令,所述计算机可执行指令被处理器执行时实现以下流程:
132.获取目标应用发送的位置信息获取请求,基于所述目标应用的应用类别,判断所述位置信息获取请求是否为冗余请求;
133.若确定是冗余请求,则拦截所述位置信息获取请求,若确定不是冗余请求,则确定所述位置信息获取请求对应的位置信息精度级别;
134.判断是否缓存有与所述位置信息精度级别相对应的有效位置信息;
135.若缓存有,则将缓存的所述有效位置信息返回至所述目标应用,若未缓存有,则向所述用户终端的操作系统请求位置信息,基于请求得到的位置信息,向所述目标应用返回与所述位置信息精度级别相对应的有效位置信息。
136.可选地,所述计算机可执行指令被处理器执行时,基于所述目标应用的应用类别,判断所述位置信息获取请求是否为冗余请求,包括:若所述目标应用为出行类应用,则确定所述位置信息获取请求不是冗余请求,若所述目标应用不为出行类应用,则获取所述目标应用所在的应用类别针对位置信息的预设请求频率阈值;若第一预设时间范围内所述目标应用针对位置信息的请求频率大于所述预设请求频率阈值,则确定所述位置信息获取请求是冗余请求,否则,确定所述位置信息获取请求不是冗余请求。
137.可选地,所述计算机可执行指令被处理器执行时,确定所述位置信息获取请求对应的位置信息精度级别,包括:若所述目标应用为出行类应用,则确定所述位置信息精度级别为最高级别,若所述目标应用不为出行类应用,则判断是否在第二预设时间范围内向所述目标应用返回过位置信息;若返回过,则确定所述位置信息精度级别高于前次向所述目标应用返回的位置信息的位置信息精度级别,若未返回过,则判断是否记录有所述目标应用所在的应用类别对应的标准位置信息精度级别;若记录有,则将记录的标准位置信息精度级别作为所述位置信息获取请求对应的位置信息精度级别,若未记录有,则将默认位置信息精度级别作为所述位置信息获取请求对应的位置信息精度级别。
138.可选地,所述计算机可执行指令被处理器执行时,判断是否缓存有与所述位置信息精度级别相对应的有效位置信息,包括:判断是否缓存有满足所述位置信息精度级别的位置信息;若未缓存有,则确定未缓存有与所述位置信息精度级别相对应的有效位置信息,若缓存有,则根据所述用户终端的移动速度和定位得到缓存的位置信息的时间,判断缓存的位置信息是否失效;若失效,则确定未缓存有与所述位置信息精度级别相对应的有效位置信息,若未失效,则确定缓存有与所述位置信息精度级别相对应的有效位置信息。
139.可选地,所述计算机可执行指令被处理器执行时,基于请求得到的位置信息,向所述目标应用返回与所述位置信息精度级别相对应的有效位置信息,包括:根据请求得到的位置信息的精度级别和所述位置信息获取请求对应的位置信息精度级别,确定对请求得到的位置信息的处理方式;基于所述处理方式,对请求得到的位置信息进行处理,得到与所述
位置信息精度级别相对应的有效位置信息;将所述有效位置信息返回至所述目标应用。
140.可选地,所述计算机可执行指令被处理器执行时,还包括:在获取到所述目标应用发送的位置信息获取请求之后,判断所述用户终端是否处于预设的非工作模式;若是,则拦截所述位置信息获取请求,若不是,则执行基于所述目标应用的应用类别,判断所述位置信息获取请求是否为冗余请求的步骤。
141.可选地,所述计算机可执行指令被处理器执行时,还包括:统计所述目标应用所在的应用类别中的各个应用,在预设时长内针对位置信息的历史请求频率;基于所述历史请求频率,确定所述目标应用所在的应用类别针对位置信息的预设请求频率阈值。
142.可选地,所述计算机可执行指令被处理器执行时,还包括:确定所述目标应用所在的应用类别中的各个应用,历史使用的位置信息的精度级别;基于所述目标应用所在的应用类别中的各个应用,历史使用的位置信息的精度级别,确定所述目标应用所在的应用类别对应的标准位置信息精度级别。
143.本实施例中,能够识别出目标应用发送的冗余的位置信息获取请求并拦截,并能够在缓存的位置信息满足目标应用的要求时,向目标应用返回缓存的位置信息,不再从用户终端的操作系统处请求位置信息,从而避免用户终端执行过多的定位操作,节省用户终端的耗电量,而且,避免用户终端执行的多次定位操作的定位结果都相同,避免重复定位的问题。
144.本说明书一实施例提供的存储介质存储的计算机可执行指令被处理器执行时,能够实现前述应用定位处理方法实施例中的各个过程,并达到相同的功能和效果,这里不再重复。
145.其中,所述的计算机可读存储介质包括只读存储器(read-only memory,简称rom)、随机存取存储器(random access memory,简称ram)、磁碟或者光盘等。
146.本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
147.以上所述仅为本说明书的实施例而已,并不用于限制本文件。对于本领域技术人员来说,本说明书的实施例可以有各种更改和变化。凡在本文件的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本文件的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1