掌桥专利:专业的专利平台
掌桥专利
首页

空间数据获取方法、装置、电子设备及介质

文献发布时间:2023-06-19 18:35:48


空间数据获取方法、装置、电子设备及介质

技术领域

本申请属于移动通信技术领域,具体涉及一种空间数据获取方法、装置、电子设备及介质。

背景技术

通常,电子设备可以根据用户所处的空间位置,多次从服务器下载该空间位置对应的空间数据(例如兴趣点(Piont Of Interesting,POI)信息),从而电子设备可以确定用户所处空间的线下场景(如机场,地铁站,医院,商场,店铺等),进而可以为用户提供精准智能的服务。

在相关技术中,电子设备可以在用户处于空间位置1的情况下,从服务器下载该空间位置1的预设范围内的区域1对应的POI信息1,并在用户移动预设距离的情况下,再次从服务器下载空间位置2(即移动后的空间位置)的预设范围内的区域2对应的POI信息2,以使得电子设备可以确定用户所处空间的线下场景。

但是,由于区域1与区域2之间可能存在重叠的情况,这样可能会导致POI信息1与POI信息2之间存在重复信息的情况,因此,导致在下载空间数据的过程中,电子设备的数据流量的浪费。

发明内容

本申请实施例的目的是提供一种空间数据获取,能够解决在下载空间数据的过程中,电子设备的数据流量的浪费的问题。

第一方面,本申请实施例提供了一种空间数据获取方法,该方法包括:根据获取的目标位置的位置信息,确定目标地理网格,该目标位置为电子设备所处的位置,该目标地理网格为目标投影中的目标区域对应的地理网格,该目标投影为地球表面在平面上的投影,该目标区域与该目标位置对应;根据目标地理网格,确定M个第一地理网格,该第一地理网格和目标地理网格相邻,M为正整数;从服务器下载N个第二地理网格对应的空间数据,该第二地理网格为:目标地理网格和M个第一地理网格中,电子设备未缓存有对应的历史空间数据的地理网格;N为正整数。

第二方面,本申请实施例提供了一种空间数据获取的装置,该空间数据获取装置包括:确定模块和下载模块。其中,确定模块,用于根据获取的目标位置的位置信息,确定目标地理网格,该目标位置为电子设备所处的位置,该目标地理网格为目标投影中的目标区域对应的地理网格,该目标投影为地球表面在平面上的投影,该目标区域与该目标位置对应,并根据目标地理网格,确定M个第一地理网格,该第一地理网格和该目标地理网格相邻,M为正整数。下载模块,用于从服务器下载确定模块确定的N个第二地理网格对应的空间数据,该第二地理网格为:目标地理网格和M个第一地理网格中,电子设备未缓存有对应的历史空间数据的地理网格,N为正整数。

第三方面,本申请实施例提供了一种电子设备,该电子设备包括处理器和存储器,所述存储器存储可在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如第一方面所述的方法的步骤。

第四方面,本申请实施例提供了一种可读存储介质,所述可读存储介质上存储程序或指令,所述程序或指令被处理器执行时实现如第一方面所述的方法的步骤。

第五方面,本申请实施例提供了一种芯片,所述芯片包括处理器和通信接口,所述通信接口和所述处理器耦合,所述处理器用于运行程序或指令,实现如第一方面所述的方法。

第六方面,本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面所述的方法。

在本申请实施例中,电子设备可以根据获取的目标位置(该目标位置为电子设备所处的位置)的位置信息,确定目标投影(该目标投影为地球表面在平面上的投影)中的目标区域(该目标区域与目标位置对应)对应的目标地理网格,并根据目标地理网格,确定M个和该目标地理网格相邻第一地理网格,M为正整数,最后从服务器下载N个第二地理网格(该第二地理网格为:目标地理网格和M个第一地理网格中,电子设备未缓存有对应的历史空间数据的地理网格)对应的空间数据,N为正整数。由于电子设备可以先根据电子设备所处位置的位置信息,确定与电子设备所处位置对应的目标区域,并从目标投影中确定与该目标区域对应的目标地理网格;然后再从服务器下载目标地理网格相邻的M个第一地理网格中,未缓存有对应的历史空间数据的N个第二地理网格对应的空间数据,因此,可以避免N个第二地理网格对应的空间数据与历史空间数据之间存在重复信息的情况,如此,可以避免在下载空间数据的过程中,电子设备的数据流量的浪费。

附图说明

图1是本申请实施例提供的空间数据获取方法的流程示意图之一;

图2是本申请实施例提供的空间数据获取方法的流程示意图之二;

图3是本申请实施例提供的空间数据获取方法的流程示意图之三;

图4是本申请实施例提供的空间数据获取方法的流程示意图之四;

图5是本申请实施例提供的空间数据获取方法的流程示意图之五;

图6是本申请实施例提供的地理网格示意图;

图7是本申请实施例提供的空间数据获取方法的流程示意图之六;

图8是本申请实施例提供的空间数据获取方法的流程示意图之七;

图9是本申请实施例提供的空间数据获取方法的流程示意图之八;

图10是本申请实施例提供的空间数据获取方法的流程示意图之九;

图11是本申请实施例提供的空间数据获取方法的流程示意图之十;

图12是本申请实施例提供的空间数据获取装置的结构示意图;

图13是本申请实施例提供的电子设备的结构示意图;

图14是本申请实施例提供的电子设备的硬件结构示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。

本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。

下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的空间数据获取方法、装置、电子设备及介质进行详细地说明。

图1示出了本申请实施例提供的一种空间数据获取方法的流程图。如图1所示,本申请实施例提供的一种空间数据获取方法可以包括下述的步骤101至步骤103。

步骤101、电子设备根据获取的目标位置的位置信息,确定目标地理网格。

本申请实施例中,上述目标位置为电子设备所处的位置,上述目标地理网格为目标投影中的目标区域对应的地理网格,上述目标投影为地球表面在平面上的投影,该目标区域与该目标位置对应。

可选地,本申请实施例中,上述电子设备内置有定位模块,当触发开启电子设备中的定位模块后,该定位模块可以实时获取电子设备所处位置的位置信息。

可以理解,当用户携带电子设备位于某一位置时,处于工作状态的定位模块接收到定位请求后可以通过对接收到的卫星定位信号进行定位计算,得到用户所在地理位置的经纬度、速度、时间等信息,电子设备接收系统定位回调,获取电子设备(用户)所处的位置(即目标位置)的位置信息。

需要说明的是,上述“目标地理网格为目标投影中的目标区域对应的地理网格,目标投影为地球表面在平面上的投影”可以理解为:根据墨卡托投影法,假设地球被套在一个圆柱中,赤道与圆柱相切,然后在地球中心放一盏灯,把球面表面的图形投影到圆柱体上,再把圆柱体展开,就形成以一幅墨卡托投影的世界地理图,采用空间切割算法将该世界地理图按照预设比例(如,500米×500米)切分成若干个地理网格。其中,每个地理网格对应一个区域,该一个区域包括若干个位置点。

可选地,本申请实施例中,上述目标位置的位置信息包括经度坐标值和维度坐标值,结合图1,如图2所示,在上述步骤101可以由下述的步骤101a和步骤101b来实现。

步骤101a、电子设备采用目标算法,根据经度坐标值和维度坐标值,计算得到目标网格标号。

可选地,本申请实施例中,上述目标算法具体可以为墨卡托投影算法,输入上述目标位置的位置信息(例如经度坐标值lon,纬度坐标值lat,)通过算法计算出目标位置所处的目标地理网格的行列号x,y。

其中,

其中,算法中z为缩放等级(假设,本申请实施例采用500m×500m的比例,则z为固定值16,),用于控制网格边长,最后将x,y用下划线连接组成地理网格编号G(x,y),每个地理网格编号对应一个地理网格。

步骤101b、电子设备将目标网格标号对应的地理网格,确定为目标地理网格。

可选地,本申请实施例中,电子设备可以根据计算得到目标网格标号确定对应的地理网格,并将该地理网格确定为目标地理网格。

如此可知,由于电子设备可以根据目标位置的位置信息包括的经度坐标值和维度坐标值,采用目标算法计算得到目标网格标号,并将该目标网格标号对应的地理网格,确定为目标地理网格,因此可以快速且准确地确定目标位置对应的目标地理网格。

当然,为了避免电子设备获取目标位置的位置信息的频次过高,可以设定电子设备在满足预设条件时,获取目标位置的位置信息,以下具体进行说明。

可选地,本申请实施例中,结合图1,如图3所示,在上述步骤101可以由下述的步骤101c来实现。

步骤101c、在满足预设条件的情况下,电子设备获取目标位置的位置信息。

本申请实施例中,上述预设条件包括以下至少一项:从第一接收时刻到当前时刻之间的时间间隔大于预设时间间隔、电子设备的计步器的记步数大于预设记步数。

可选地,本申请实施例中,上述第一接收时刻为:电子设备获取位置信息的时刻中,最接近当前时刻的时刻。

可选地,本申请实施例中,上述预设时间间隔可以为用户对电子设备设置的一个时间间隔,也可以为电子设备系统默认的一个时间间隔,在满足该预设时间间隔后,电子设备获取目标位置的位置信息和发起空间数据请求。

可选地,本申请实施例中,上述预设记步数可以为用户在电子设备的计步器系统中设置的一个记步数,也可以为电子设备的计步器系统默认的一个记步数。

可以理解,在达到预设记步数之后,电子设备获取目标位置的位置信息和发起空间数据请求。

可选地,本申请实施例中,当电子设备从第一接收时刻到当前时刻之间的时间间隔大于预设时间间隔时,保存目标位置的获取时间T1;当电子设备的计步器的记步数大于预设记步数保存当前计步数S1,目标位置的获取时间T1和当前计步数S1作为下次是否发起网格计算的判断依据。

如此可知,由于电子设备只有在满足预设条件的情况下,才会获取目标位置的位置信息,从而能明显降低下发的空间数据数量与频次,并且减少重复数据下发,因此可以大大减少用户数据流量的消耗。

步骤102、电子设备根据目标地理网格,确定M个第一地理网格。

本申请实施例中,上述第一地理网格和目标地理网格相邻,M为正整数。

可选地,本申请实施例中,第一地理网格可以为在预设范围内和目标地理网格相邻的地理网格,该预设范围可以为以目标地理网格为中心,边长为地理网格边长X倍的正方形区域,X为正整数。

在一种示例中,第一地理网格可以为以目标地理网格为中心,边长为地理网格边长三倍的正方形区域内与目标地理网格相邻的地理网格,即第一地理网格可以为以目标地理网格为中心的九宫格中除目标地理网格以外的八个地理网格。

在另一种示例中,第一地理网格可以为以目标地理网格为中心,边长为地理网格边长五倍的正方形区域内与目标地理网格相邻的地理网格,即第一地理网格可以为以目标地理网格为中心的二十五宫格中除目标地理网格以外的二十四个地理网格。

可选地,本申请实施例中,结合图1,如图4所示,在上述步骤102可以由下述的步骤102a来实现。

步骤102a、在目标地理网格的标识信息与第一标识信息不匹配的情况下,电子设备根据目标地理网格,确定M个第一地理网格。

本申请实施例中,上述第一标识信息为:电子设备缓存有对应的历史空间数据的地理网格的标识信息。

可选地,本申请实施例中,上述目标地理网格的标识信息可以为按照上述墨卡托投影算法,输入目标位置信息指示的经纬度坐标值,计算得到的目标位置所处的目标地理网格的地理网格编号G(x,y)。

可选地,本申请实施例中,电子设备内存储有第一标识信息,该第一标识信息对应的地理网格缓存有历史空间数据,且该第一标识信息可以为按照墨卡托投影算法,计算得到的地理网格的地理网格编号。

需要说明的是,上述“目标地理网格的标识信息与第一标识信息不匹配”可以理解为:目标位置所处的目标地理网格的地理网格编号与缓存有历史空间数据的地理网格的地理网格编号不一致,即该目标位置所处的目标地理网格为首次到访的地理网格,目标地理网格为未缓存有空间数据的地理网格。

可以理解,在目标地理网格为未缓存有空间数据的地理网格的情况下,按照上述方法确定M个第一地理网格。

如此可知,由于电子设备在目标地理网格的标识信息与缓存有历史空间数据的地理网格的第一标识信息不一致的情况下,才会根据目标地理网格,确定M个与目标地理网格相邻的地理网格,从而能明显降低需要下发空间数据的地理网格数量,进而减少重复数据下发,因此可以大大减少用户数据流量的消耗。

步骤103、电子设备从服务器下载N个第二地理网格对应的空间数据。

本申请实施例中,上述第二地理网格为:目标地理网格和M个第一地理网格中,电子设备未缓存有对应的历史空间数据的地理网格,N为正整数。

可选地,本申请实施例中,上述服务器可以为地理空间数据云平台或者地理空间数据库,该云平台或者数据库存储有大量地理网格对应地理空间数据,该地理空间数据包括大量实际空间中可以抽象为点的地理实体,如常见的机场,地铁站,医院,商场,店铺等场景,基于这些场景可以为用户提供精准智能的服务。

可选地,本申请实施例中,从目标地理网格和M个第一地理网格中,去除电子设备缓存有对应的历史空间数据的地理网格,可以得到N个未缓存有对应的历史空间数据的第二地理网格及该N个第二地理网格的地理网格编号。

进一步可选地,本申请实施例中,按照上述N个第二地理网格的地理网格编号,向服务器请求下发该地理网格编号对应的空间数据的接口,并从该数据接口下载N个第二地理网格对应的空间数据。

本申请实施例中,服务器也可以采用墨卡托算法预计算空间数据所属网格及维护网格版本号,当收到电子设备请求后,按照服务器配置的数据优先级下发数据。

可以理解,用户使用电子设备请求服务器下发空间数据频次越多的地理网格(如公司、家等经常驻留的场所所在的地理网格)所对应的空间数据优先级越高。

本申请实施例提供的空间数据获取方法,电子设备可以根据获取的目标位置(该目标位置为电子设备所处的位置)的位置信息,确定目标投影(该目标投影为地球表面在平面上的投影)中的目标区域(该目标区域与目标位置对应)对应的目标地理网格,并根据目标地理网格,确定M个和该目标地理网格相邻第一地理网格,M为正整数,最后从服务器下载N个第二地理网格(该第二地理网格为:目标地理网格和M个第一地理网格中,电子设备未缓存有对应的历史空间数据的地理网格)对应的空间数据,N为正整数。由于电子设备可以先根据电子设备所处位置的位置信息,确定与电子设备所处位置对应的目标区域,并从目标投影中确定与该目标区域对应的目标地理网格;然后再从服务器下载目标地理网格相邻的M个第一地理网格中,未缓存有对应的历史空间数据的N个第二地理网格对应的空间数据,因此,可以避免N个第二地理网格对应的空间数据与历史空间数据之间存在重复信息的情况,如此,可以避免在下载空间数据的过程中,电子设备的数据流量的浪费。

当然,有些地理网格对应的空间区域可能为湖泊或者荒地等,这些区域无法提供有用的场景数据,对这些地理网格对应的空间数据进行下载同样会造成用户的流数据的浪费,因此在下载地理网格对应的空间数据之前要对这些无数据的地理网格进行去除,以下进行具体说明。

可选地,本申请实施例中,结合图1,如图5所示,在上述步骤103之前,本申请实施例提供的空间数据获取方法还可以包括下述的步骤201和步骤202。

步骤201、电子设备从目标地理网格和M个第一地理网格中,确定电子设备未缓存有对应的历史空间数据的L个第三地理网格。

本申请实施例中,L为正整数。

可选地,本申请实施例中,将目标地理网格对应的网格编号和M个第一地理网格的网格编号和电子设备内缓存有对应的历史空间数据的地理网格的网格编号进行对比,去除和缓存有历史空间数据的地理网格的网格编号一致的地理网格,可以得到L个未缓存有对应的历史空间数据的第三地理网格及该L个第三地理网格的地理网格编号。

步骤202、电子设备从L个第三地理网格中,确定标识信息不处于预设黑名单中的N个第二地理网格。

本申请实施例中,上述预设黑名单中包括至少一个第四地理网格的标识信息,该第四地理网格为服务器中未对应有空间数据的地理网格。

可选地,本申请实施例中,第四地理网格对应的地理区域具体可以为湖泊、荒地、山丘等无法提供场景数据的地理区域,即该地理区域在服务器中未对应有空间数据,一个第四地理网格对应的网格编号对应一个预设黑名单中的标识信息。

可选地,本申请实施例中,将L个第三地理网格对应的网格编号和预设黑名单中的网格编号进行对比,去除和预设黑名单中的网格编号一致的地理网格,可以得到N个第二地理网格及该N个第二地理网格的地理网格编号。

可以理解,上述N个第二地理网格的地理网格编号可以组成请求下发空间数据的网格编号集合R。

举例说明,如图6所示,假设当前位置G1经过计算后的网格编号为(0,0),那么其他网格的网格编号可以推理得出,空间数据请求存在以下6种情况:

a)当用户位于地理网格G1(0,0)时,需要用本身网格(0,0)及(-1,1),(0,1),(1,1),(-1,0),(1,0),(-1,-1),(0,-1),(1,-1)这8个地理网格,共9个地理网格组成请求下发空间数据的网格编号集合R。

b)当用户从地理网格G1(0,0)移动到地理网格G2(2,0)时,只需用(2,1),(2,0),(2,-1)这3个地理网格组成请求下发空间数据的网格编号集合R。

c)当用户从地理网格G1(0,0)移动到地理网格G3(2,0)时,只需用(2,1),(3,1),(2,0),(3,0),(2,-1),(3,-1)这6个地理网格组成请求下发空间数据的网格编号集合R。

这时,假设地理网格(3,0)的网格编号在以往的请求中已被加入预设黑名单,那么请求时需要剔除地理网格(3,0)。

d)当用户从地理网格G1(0,0)移动到地理网格G4(2,-1)时,只需用(2,0),(3,0),(2,-1),(3,-1),(1,-2),(2,-2),(3,-2)这7个地理网格组成请求下发空间数据的网格编号集合R。

e)当用户从地理网格G1(0,0)移动到地理网格G5(2,-2)时,只需用(2,-1),(3,-1),(1,-2),(2,-2),(3,-2),(1,-3),(2,-3),(3,-3)这8个地理网格组成请求下发空间数据的网格编号集合R。

f)当用户从地理网格G1(0,0)移动到地理网格G6(3,-3)时,需要用(3,-3),(2,-2),(3,-2),(4,-2),(2,-3),(4,-3),(2,-4),(3,-4),(4,-4)这9个地理网格组成请求下发空间数据的网格编号集合R。

如此可知,由于电子设备可以先从目标地理网格和M个第一地理网格中,确定L个未缓存有对应的历史空间数据的第三地理网格,再从L个第三地理网格中,确定标识信息不处于预设黑名单中的N个第二地理网格,从而能明显降低需要下发空间数据的地理网格数量,避免重复数据下发,因此可以大大减少用户数据流量的消耗。

同时,在电子设备从服务器下载空间数据时,如果发现有未对应有空间数据的地理网格,需要将其添加到预设黑名单中,以下进行具体说明。

可选地,本申请实施例中,结合图1,如图7所示,在上述步骤103之后,本申请实施例提供的空间数据获取方法还可以包括下述的步骤301。

步骤301、电子设备在预设黑名单中添加第五地理网格的标识信息。

本申请实施例中,上述第五地理网格为:N个第二地理网格中,未下载到对应的空间数据的地理网格。

可选地,本申请实施例中,服务器响应于请求下发N个第二地理网格对应的空间数据的请求后,向电子设备发送了空间数据的下载接口,以使得电子设备可以下载N个第二地理网格对应的空间数据。

可选地,本申请实施例中,在电子设备和服务器之间出现超文本传输协议(HyperText Transfer Protocol,HTTP)建立失败或者请求异常时,未请求到空间数据的地理网格在下次定位回调时重新发起请求数据。

可选地,本申请实施例中,在电子设备从服务器请求空间数据成功但是地理网格未下载到对应的空间数据时,将未下载到对应的空间数据的第五地理网格所对应的网格编号添加到预设黑名单中,以便为下次电子设备从服务器请求空间数据提供参考。

如此可知,由于电子设备可以在预设黑名单中添加未下载到对应的空间数据的第五地理网格的标识信息,从而可以实时更新预设黑名单,为下次电子设备确定请求下发空间数据的地理网格对应的网格编号提供参考,因此可以降低需要下发空间数据的地理网格数量,避免重复数据下发,减少用户数据流量的消耗。

在电子设备请求到地理网格的空间数据后,还需要将空间数据缓存下来,以下进行具体说明。

可选地,本申请实施例中,结合图1,如图8所示,在上述步骤103之后,本申请实施例提供的空间数据获取方法还可以包括下述的步骤401和步骤402。

步骤401、电子设备根据N个第二地理网格的历史下载数据,从N个第二地理网格中确定第六地理网格。

可选地,本申请实施例中,上述历史下载数据可以为电子设备统计的从服务器请求下载空间数据的频次。

进一步可选地,本申请实施例中,根据电子设备从服务器请求下载N个第二地理网格对应的空间数据的频次大小,将下载频次较多的地理网格确定为第六地理网格。

步骤402、电子设备缓存第六地理网格对应的空间数据。

可选地,本申请实施例中,上述第六地理网格包括至少一个地理网格,电子设备可以根据该至少一个地理网格的空间数据下载频次的大小,按照下载频次从多到少依次缓存该至少一个地理网格的空间数据。

可选地,本申请实施例中,电子设备可以设置缓存空间数据的地理网格的数量上限。

具体地,缓存空间数据的地理网格的数量上限可以设置为100个,当缓存空间数据的地理网格的数量达到100个时,电子设备会按照空间数据缓存淘汰策略清除部分地理网格的空间数据。

可选地,本申请实施例中,电子设备可以设置空间数据缓存淘汰策略。

具体地,上述空间数据缓存淘汰策略可以为先进先出的缓存淘汰策略,即电子设备缓存空间数据的地理网格的数量达到设置的数量上限时,会先清除之前最先缓存有空间数据的地理网格内的空间数据。

可选地,本申请实施例中,电子设备还可以设置新地理网格的缓存数据保护策略。

具体地,电子设备可以设置新地理网格缓存数据保护周期为1周,即在一周内,该新地理网格缓存的空间数据不会被清除。

可选地,本申请实施例中,电子设备还可以设置特定地理网格缓存数据保护策略。

具体地,电子设备还可以设置经常驻留的地理网格(如家和公司附近的地理网格)的空间数据不做缓存清除。

以下举例说明本申请实施例提供的空间数据获取方法的整个流程,如图9所示,该方法具体可以包括以下步骤:

步骤01、电子设备接收当前的定位位置L1。

步骤02、判断距离上一次定位位置接收时间是否大于T分钟、计步器步数是否大于S步。满足以上至少一个条件时,才继续执行步骤03,否则结束流程。

步骤03、保存当前位置接收时间T1及当前步数S1。T1和S1作为下次是否发起地理网格的网格编号计算的判断依据。

步骤04、使用当前位置L1计算网格编号G1(x1,y1)。采用墨卡托投影算法,输入用户当前位置L1的经纬度值,通过算法计算出当前位置L1所处网格的行列号x1,y1。

步骤05、对比网格编号G1与历史缓存网格编号G是否一致。若不一致,则需要准备请求以G1为中心的九宫格的空间数据,执行步骤06,否则结束流程。

步骤06、判断当前网格编号G1为中心的九宫格是否都有空间数据。若存在没有数据的网格,则需要向服务器请求对应地理网格的空间数据,执行步骤07,否则代表九宫格都有空间数据,无需重复请求,流程结束。

步骤07、获取当前九宫格中无数据的网格编号及版本号,并去除预设黑名单网格编号后得到请求下发空间数据的网格编号集合R,请求服务器下发数据接口I1。

步骤08、判断数据请求是否成功。如果成功,则执行步骤09,否则结束流程,未请求到空间数据的地理网格在下次定位回调时发起如图8所示的全部流程重新请求数据。

步骤09、判断发起请求的地理网格编号集合R内的地理网格是否都请求到了空间数据。如果存在无空间数据的地理网格,则执行步骤010,对于有空间数据的地理网格,则执行步骤011。

步骤010、将无空间数据的地理网格对应的网格编号加入预设黑名单。

步骤011、根据数据下载频次缓存数据。优先缓存数据下载频次较高的地理网格的空间数据。

如此可知,由于电子设备可以根据N个第二地理网格的历史下载数据,从N个第二地理网格中确定下载数据频次较多的第六地理网格,并优先缓存该第六地理网格的空间数据,因此,提高了电子设备缓存空间数据的效率,并使下载频次较高的数据可以优先缓存。

除此之外,为保证空间数据的有效性,本申请实施例还提供了一种地理网格的空间数据更新方法,以下进行具体说明。

可选地,本申请实施例中,结合图1,如图10所示,在上述步骤103之后,本申请实施例提供的空间数据获取方法还可以包括下述的步骤501和步骤502。

步骤501、电子设备从服务器下载T个第七地理网格对应的空间数据。

本申请实施例中,上述第七地理网格为:目标地理网格和M个第一地理网格中,电子设备缓存有对应的历史空间数据的地理网格,T为正整数。

可选地,本申请实施例中,电子设备在从服务器下载T个第七地理网格对应的空间数据的同时,还会下载T个第七地理网格对应的空间数据的网格数据版本号,该网格数据版本号指示该空间数据在服务器中创建和更新的日期。

可选地,本申请实施例中,在满足预设更新条件的情况下,电子设备请求服务器下发T个第七地理网格的网格数据版本有增加的网格数据编号及其对应的空间数据供电子设备清除缓存。

进一步可选地,本申请实施例中,上述预设更新条件包括以下至少一项:从第一更新时刻到当前时刻之间的时间间隔大于预设更新间隔、电子设备当前连接无线保真网络(Wireless Fidelity,WiFi)。

进一步可选地,本申请实施例中,上述第一更新时刻为:电子设备第一次获取空间数据的网格数据版本号的时刻。

可选地,本申请实施例中,上述预设更新间隔可以为用户对电子设备设置的一个时间间隔,也可以为电子设备系统默认的一个时间间隔,在该预设时间间隔内,电子设备不会请求服务器下发网格数据版本有增加的网格数据编号及其对应的空间数据。

步骤502、电子设备将T个第七地理网格对应的历史空间数据,更新为下载的T个第七地理网格对应的空间数据。

可选地,本申请实施例中,电子设备下载的T个第七地理网格对应的空间数据为T个第七地理网格对应的网格数据版本有升级的空间数据。

可选地,本申请实施例中,电子设备请求到服务器下发的网格数据版本有升级的空间数据后,清除缓存中对应网格编号的数据,并在后续接收到定位回调后将对应网格编号的空间数据更新为网格数据版本有升级的空间数据。

以下举例说明本申请实施例提供的空间数据更新方法的整个流程,如图11所示,该方法具体可以包括以下步骤:

步骤01、判断电子设备是否连上wifi且时间超过T天(默认值2天)。电子设备可以设置定时任务,每T天执行一次,当连上wifi时,执行步骤02,否则结束流程,等待定时任务下一次触发。

步骤02、由用户当前位置L1计算网格编号G1。

步骤03、判断当前网格编号G1为中心的九宫格的空间数据是否都已存在。如果都已存在,则执行步骤06,如果有无空间数据的地理网格,则执行步骤04。

步骤04、获取当前九宫格所有不存在空间数据的地理网格及网格数据版本号组成请求空间数据的网格编号集合R,并清除已被加入预设黑名单的网格编号,请求服务器下发接口I1。

步骤05、更新缓存空间数据。

步骤06、获取当前九宫格所有存在空间数据的地理网格及网格数据版本号组成请求空间数据的网格编号集合R,并清除已被加入预设黑名单内的网格编号,请求服务器更新接口I2。接口I2会下发网格数据版本有增加的网格编号及其空间数据供电子设备清除缓存使用。

步骤07、清除对应地理网格的缓存数据。电子设备请求到服务器下发的网格数据版本有升级的网格编号后,清除缓存中对应网格编号的空间数据,在后续接收到定位回调后将对应网格编号的空间数据更新为网格数据版本有升级的空间数据。

如此可知,由于电子设备可以先从服务器下载T个第七地理网格对应的网格数据版本有升级的空间数据,并将历史空间数据更新为网格数据版本有升级的空间数据,因此能高效地更新局部空间数据,并显著提高了空间数据的有效性和实时性。

本申请实施例提供的方法,执行主体可以为装置。本申请实施例中以装置执行方法为例,说明本申请实施例提供的装置的。

图12示出了上述实施例中所涉及的一种空间数据获取装置60,该数据存储装置包括:确定模块61和下载模块62。其中,确定模块61,用于根据获取的目标位置的位置信息,确定目标地理网格,该目标位置为电子设备所处的位置,该目标地理网格为目标投影中的目标区域对应的地理网格,该目标投影为地球表面在平面上的投影,该目标区域与该目标位置对应,并根据目标地理网格,确定M个第一地理网格,该第一地理网格和该目标地理网格相邻,M为正整数。下载模块62,用于从服务器下载确定模块确定的N个第二地理网格对应的空间数据,该第二地理网格为:目标地理网格和M个第一地理网格中,电子设备未缓存有对应的历史空间数据的地理网格,N为正整数。

在一种可能的实现方式中,上述确定模块还用于从目标地理网格和M个第一地理网格中,确定空间数据获取装置未缓存有对应的历史空间数据的L个第三地理网格,L为正整数,并从L个第三地理网格中,确定标识信息不处于预设黑名单中的N个第二地理网格,该预设黑名单中包括至少一个第四地理网格的标识信息,该第四地理网格为服务器中未对应有空间数据的地理网格。

在一种可能的实现方式中,上述空间数据获取装置60还包括:添加模块。其中,添加模块,用于用于在预设黑名单中添加第五地理网格的标识信息,该第五地理网格为:N个第二地理网格中,未下载到对应的空间数据的地理网格。

在一种可能的实现方式中,上述确定模块具体用于在目标地理网格的标识信息与第一标识信息不匹配的情况下,根据该目标地理网格,确定M个第一地理网格,该第一标识信息为:空间数据获取装置缓存有对应的历史空间数据的地理网格的标识信息。

在一种可能的实现方式中,上述确定模块还具体用于在满足第一条件的情况下,根据目标位置的位置信息,确定目标地理网格。其中,第一条件包括以下至少一项:从第一接收时刻到当前时刻之间的时间间隔大于预设时间间隔、空间数据获取装置的计步器的记步数大于预设记步数,该第一接收时刻为:空间数据获取装置获取位置信息的时刻中,最接近当前时刻的时刻。

在一种可能的实现方式中,上述目标位置的位置信息包括经度坐标值和维度坐标值;上述确定模块包括:计算子模块。其中,计算子模块,用于采用目标算法,根据经度坐标值和维度坐标值,计算得到目标网格标号。确定模块,还用于将计算子模块得到的目标网格标号对应的地理网格,确定为目标地理网格。

本申请实施例提供的空间数据获取装置,由于空间数据获取装置可以先根据空间数据获取装置所处位置的位置信息,确定与空间数据获取装置所处位置对应的目标区域,并从目标投影中确定与该目标区域对应的目标地理网格;然后再从服务器下载目标地理网格相邻的M个第一地理网格中,未缓存有对应的历史空间数据的N个第二地理网格对应的空间数据,因此,可以避免N个第二地理网格对应的空间数据与历史空间数据之间存在重复信息的情况,如此,可以避免在下载空间数据的过程中,空间数据获取装置的数据流量的浪费。

本申请实施例中的空间数据获取装置可以是电子设备,也可以是电子设备中的部件,例如集成电路或芯片。该电子设备可以是终端,也可以为除终端之外的其他设备。示例性的,电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载电子设备、移动上网装置(mobile internet device,MID)、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、机器人、可穿戴设备、超级移动个人计算机(ultra-mobilepersonal computer,UMPC)、上网本或者个人数字助理(personal digital assistant,PDA)等,还可以为服务器、网络附属存储器(network attached storage,NAS)、个人计算机(personal computer,PC)、电视机(television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。

本申请实施例中的空间数据获取装置可以为具有操作系统的装置。该操作系统可以为安卓(Android)操作系统,可以为iOS操作系统,还可以为其他可能的操作系统,本申请实施例不作具体限定。

本申请实施例提供的空间数据获取装置能够实现图1至图11的方法实施例实现的各个过程,为避免重复,这里不再赘述。

可选地,本申请实施例中,如图13所示,本申请实施例还提供一种电子设备80,包括处理器81和存储器82,存储器82上存储有可在所述处理器81上运行的程序或指令,该程序或指令被处理器81执行时实现上述方法实施例的各个过程步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。

需要说明的是,本申请实施例中的电子设备包括上述所述的移动电子设备和非移动电子设备。

图14为实现本申请实施例的一种电子设备的硬件结构示意图。

该电子设备100包括但不限于:射频单元1001、网络模块1002、音频输出单元1003、输入单元1004、传感器1005、显示单元1006、用户输入单元1007、接口单元1008、存储器1009、以及处理器110等部件。

本领域技术人员可以理解,电子设备100还可以包括给各个部件供电的电源(比如电池),电源可以通过电源管理系统与处理器110逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。图14中示出的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置,在此不再赘述。

其中,处理器110,具体用于根据获取的目标位置的位置信息,确定目标地理网格,该目标位置为电子设备所处的位置,该目标地理网格为目标投影中的目标区域对应的地理网格,该目标投影为地球表面在平面上的投影,该目标区域与该目标位置对应;根据目标地理网格,确定M个第一地理网格,该第一地理网格和目标地理网格相邻,M为正整数;从服务器下载N个第二地理网格对应的空间数据,该第二地理网格为:目标地理网格和M个第一地理网格中,电子设备未缓存有对应的历史空间数据的地理网格;N为正整数。

本申请实施例提供的电子设备,由于电子设备可以先根据电子设备所处位置的位置信息,确定与电子设备所处位置对应的目标区域,并从目标投影中确定与该目标区域对应的目标地理网格;然后再从服务器下载目标地理网格相邻的M个第一地理网格中,未缓存有对应的历史空间数据的N个第二地理网格对应的空间数据,因此,可以避免N个第二地理网格对应的空间数据与历史空间数据之间存在重复信息的情况,如此,可以避免在下载空间数据的过程中,电子设备的数据流量的浪费。

可选地,本申请实施例中,处理器110,具体用于从目标地理网格和M个第一地理网格中,确定电子设备未缓存有对应的历史空间数据的L个第三地理网格;L为正整数;从L个第三地理网格中,确定标识信息不处于预设黑名单中的N个第二地理网格;预设黑名单中包括至少一个第四地理网格的标识信息,该第四地理网格为服务器中未对应有空间数据的地理网格。

如此可知,由于电子设备可以先从目标地理网格和M个第一地理网格中,确定L个未缓存有对应的历史空间数据的第三地理网格,再从L个第三地理网格中,确定标识信息不处于预设黑名单中的N个第二地理网格,从而能明显降低需要下发空间数据的地理网格数量,避免重复数据下发,因此可以大大减少用户数据流量的消耗。

可选地,本申请实施例中,处理器110,具体用于在预设黑名单中添加第五地理网格的标识信息;第五地理网格为:N个第二地理网格中,未下载到对应的空间数据的地理网格。

如此可知,由于电子设备可以在预设黑名单中添加未下载到对应的空间数据的第五地理网格的标识信息,从而可以实时更新预设黑名单,为下次电子设备确定请求下发空间数据的地理网格对应的网格编号提供参考,因此可以降低需要下发空间数据的地理网格数量,避免重复数据下发,减少用户数据流量的消耗。

可选地,本申请实施例中,处理器110,具体用于在目标地理网格的标识信息与第一标识信息不匹配的情况下,根据该目标地理网格,确定M个第一地理网格;第一标识信息为:电子设备缓存有对应的历史空间数据的地理网格的标识信息。

如此可知,由于电子设备在目标地理网格的标识信息与缓存有历史空间数据的地理网格的第一标识信息不一致的情况下,才会根据目标地理网格,确定M个与目标地理网格相邻的地理网格,从而能明显降低需要下发空间数据的地理网格数量,进而减少重复数据下发,因此可以大大减少用户数据流量的消耗。

可选地,本申请实施例中,处理器110,具体用于在满足第一条件的情况下,根据目标位置的位置信息,确定目标地理网格;其中,第一条件包括以下至少一项:从第一接收时刻到当前时刻之间的时间间隔大于预设时间间隔、电子设备的计步器的记步数大于预设记步数;第一接收时刻为:电子设备获取位置信息的时刻中,最接近当前时刻的时刻。

如此可知,由于电子设备只有在满足预设条件的情况下,才会获取目标位置的位置信息,从而能明显降低下发的空间数据数量与频次,并且减少重复数据下发,因此可以大大减少用户数据流量的消耗。

可选地,本申请实施例中,处理器110,具体用于采用目标算法,根据经度坐标值和维度坐标值,计算得到目标网格标号;将目标网格标号对应的地理网格,确定为目标地理网格。

如此可知,由于电子设备可以根据目标位置的位置信息包括的经度坐标值和维度坐标值,采用目标算法计算得到目标网格标号,并将该目标网格标号对应的地理网格,确定为目标地理网格,因此可以快速且准确地确定目标位置对应的目标地理网格。

应理解的是,本申请实施例中,输入单元1004可以包括图形处理器(graphicsprocessing unit,GPU)1041和麦克风1042,图形处理器1041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。显示单元1006可包括显示面板1061,可以采用液晶显示器、有机发光二极管等形式来配置显示面板1061。用户输入单元1007包括触控面板1071以及其他输入设备1072中的至少一种。触控面板1071,也称为触摸屏。触控面板1071可包括触摸检测装置和触摸控制器两个部分。其他输入设备1072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。

存储器1009可用于存储软件程序以及各种数据。存储器1009可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器1009可以包括易失性存储器或非易失性存储器,或者,存储器1009可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DRRAM)。本申请实施例中的存储器1009包括但不限于这些和任意其它适合类型的存储器。

处理器110可包括一个或多个处理单元;可选的,处理器110集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线通信信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器110中。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以计算机软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。

上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

技术分类

06120115626725