CN116501516B - 一种多地图调用方法、装置、设备及存储介质 - Google Patents

一种多地图调用方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN116501516B
CN116501516B CN202310413091.0A CN202310413091A CN116501516B CN 116501516 B CN116501516 B CN 116501516B CN 202310413091 A CN202310413091 A CN 202310413091A CN 116501516 B CN116501516 B CN 116501516B
Authority
CN
China
Prior art keywords
map
attribute
target
interface
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310413091.0A
Other languages
English (en)
Other versions
CN116501516A (zh
Inventor
姚荣进
陶白镪
陈厚鑫
曾超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing Leading Technology Co Ltd
Original Assignee
Nanjing Leading Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing Leading Technology Co Ltd filed Critical Nanjing Leading Technology Co Ltd
Priority to CN202310413091.0A priority Critical patent/CN116501516B/zh
Publication of CN116501516A publication Critical patent/CN116501516A/zh
Application granted granted Critical
Publication of CN116501516B publication Critical patent/CN116501516B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/545Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本申请涉及网约车技术领域,尤其涉及一种多地图调用方法、装置、设备及存储介质,用于解决响应延迟大、响应效果不准确等问题,该方法为:响应于针对目标应用的地图调用指令,通过应用程序层确定地图调用指令对应的目标地图功能;调用目标地图功能对应的目标抽象服务接口,通过地图抽象层基于筛选逻辑,以及预设的每个候选地图类型的各关联属性,从所有候选地图类型中确定出目标地图类型,任一关联属性包括对应候选地图类型的数据传输接口的接口属性;通过地图类型实现层,调用该目标地图类型的数据传输接口,获得地图调用指令对应的地图数据,并将地图数据通过目标抽象服务接口发送至应用程序层;这样,提高了响应速度、响应效果精确度及稳定性。

Description

一种多地图调用方法、装置、设备及存储介质
技术领域
本申请涉及网约车技术领域,尤其涉及一种多地图调用方法、装置、设备及存储介质。
背景技术
随着导航、定位技术的迅猛发展,地图被广泛应用于各个领域的应用软件中。目前主流地图服务商有多个,不同地图服务商在不同应用场景中有各自的优势和缺点。
已有技术下,一款应用软件中通常仅能够按照预设代码调用一个地图服务商的地图数据,地图功能的优劣完全依赖于其调用地图数据的固有属性,导致地图功能在不同地域的表现会有较大差异,比如响应延迟大、搜索结果不够详细、路线规划不够准确等,从而无法满足不同地域用户的需求。
发明内容
本申请实施例提供一种多地图调用方法、装置、设备及存储介质,用以提高响应速度、响应结果稳定性。
本申请实施例提供的具体技术方案如下:
第一方面,本申请实施例提供一种多地图调用方法,应用于包含目标应用的终端,所述目标应用的软件架构包括应用程序层、地图抽象层和地图类型实现层,所述地图抽象层包括多个与地图功能一一对应的抽象服务接口,所述方法包括:
响应于针对所述目标应用的地图调用指令,通过所述应用程序层确定所述地图调用指令对应的目标地图功能;
调用所述目标地图功能对应的目标抽象服务接口,获取预先封装在所述目标抽象服务接口中的筛选逻辑,通过所述地图抽象层基于所述筛选逻辑,以及预设的每个候选地图类型的各关联属性,从所有候选地图类型中确定出目标地图类型;其中任一关联属性包括对应候选地图类型的数据传输接口的接口属性;
通过所述地图类型实现层,调用所述目标地图类型的数据传输接口,获得所述地图调用指令对应的地图数据;
将所述地图数据通过所述目标抽象服务接口发送至所述应用程序层。
采用本申请实施例中的多地图调用方法,响应于针对目标应用的地图调用指令,在调用地图类型的数据传输接口获取该地图调用指令对应的地图数据之前,通过应用程序层确定该地图调用指令对应的目标地图功能,再调用目标地图功能对应的抽象服务接口,基于筛选逻辑,以及每个候选地图类型的各关联属性,从所有候选地图类型中确定出目标地图类型,实现了多地图调用,且支持动态切换地图类型,从而提高了响应速度、保证了响应结果的稳定性。
进一步地,通过将目标应用的软件架构进行重新设计,分为应用程序层、地图抽象层和地图类型实现层,按照不同地图功能定义不同的抽象服务接口,即地图抽象层包括多个与地图功能一一对应的抽象服务接口,这样,应用程序层只需通过统一的接口调用即可实现调用不同的地图功能,不需关心底层实现细节,提高了代码的可读性和可理解性;同时将地图类型实现层与应用程序层分离,可以实现根据实际需要对地图类型进行更新和修改,而不影响应用程序层的功能,同时也为应用程序层涉及的业务流程的发展和拓展创造条件,提高了代码的可维护性和可扩展性。
在一种可能的实现方式中,所述通过所述地图抽象层基于所述筛选逻辑,以及预设的每个候选地图类型的各关联属性,从所有候选地图类型中确定出目标地图类型,包括:
通过所述地图抽象层执行所述筛选逻辑,基于预设的每个候选地图类型的各关联属性,以及各关联属性、属性值和权重值之间的对应关系,得到每个候选地图类型的各关联属性对应的属性值和权重值,其中,任一权重值表征与所述任一权重值对应的关联属性的重要度;
基于任一候选地图类型的各关联属性对应的属性值和权重值,得到所述任一候选地图类型对应的参考值;
基于各候选地图类型对应的参考值,从所有候选地图类型中确定所述目标地图类型。
上述方法,通过基于每个候选地图类型的各关联属性对应的属性值和权重值,确定各自对应的参考值,实现从多个候选地图类型中确定出目标地图类型,从而实现针对目标地图功能对多个候选地图类型的筛选,以保证调用目标地图类型实现利用目标地图功能获得到的地图数据的稳定性和精确性。
在一种可能的实现方式中,所述接口属性包括接口耗时属性;在所述获得所述地图调用指令对应的地图数据之后,还包括:
通过所述地图抽象层基于所述目标地图类型的数据传输接口的调用时刻,以及接收到所述地图调用指令对应的地图数据的接收时刻,确定所述目标地图类型的数据传输接口的实际接口耗时;
若所述实际接口耗时位于预设接口耗时区间外,则基于所述实际接口耗时和所述接口耗时区间中的基准接口耗时之间的关系,对所述目标地图类型的接口耗时属性对应的属性值进行调整,其中,所述基准接口耗时是基于所述目标地图类型的数据传输接口的历史接口耗时确定的。
上述方法,基于本次调用情况更新目标地图类型的任一关联属性对应的属性值,实现属性值的动态调整,为后续确定目标地图类型的准确性做准备。
在一种可能的实现方式中,所述基于所述实际接口耗时和所述接口耗时区间中的基准接口耗时之间的关系,对所述目标地图类型的接口耗时属性对应的属性值进行调整,包括:
若所述实际接口耗时小于所述基准接口耗时,则基于所述基准接口耗时与所述实际接口耗时的差值,确定第一调整值,并将所述目标地图类型的接口耗时属性对应的属性值提高所述第一调整值;
若所述实际接口耗时大于所述基准接口耗时,则基于所述实际接口耗时与所述基准接口耗时的差值,确定第二调整值,并将所述目标地图类型的接口耗时属性对应的属性值降低所述第二调整值。
上述方法,针对不同的比较结果进行不同的调整方式,使得目标地图类型的接口耗时属性与实际情况贴合。
在一种可能的实现方式中,所述任一关联属性还包括所述终端的网络实时属性,若所述地图调用指令是启动指令,则所述方法还包括:
响应于所述启动指令,通过所述地图抽象层基于预设周期,对所述终端的网络实时属性对应的实时参数值进行检测;
每检测到一个实时参数值,将所述实时参数值与预设实时参数值区间进行比较,若所述实时参数值位于所述实时参数值区间外,则基于比较结果对所述网络实时属性对应的当前属性值进行更新;其中,首次更新的所述网络实时属性对应的当前属性值为预设的初始属性值。
上述方法,针对网络实时属性这一类数据变换频繁的属性进行周期性更新,可以实时监控上述属性的准确性,以保证在使用该属性对应的属性值进行候选地图类型筛选时,确定出更加贴合当前网络实际情况的目标地图类型,从而保证在相应使用场景下调用该目标地图类型可以提高响应速度、响应结果稳定性及响应效果精确度。
在一种可能的实现方式中,通过如下方式更新任一候选地图类型的任一关联属性对应的权重值:
接收服务端发送的目标权重值,其中,所述目标权重值与所述任一候选地图类型的目标关联属性对应,所述目标关联属性是所述各关联属性中的任一个;
利用所述目标权重值替换所述目标关联属性、属性值和权重值之间的对应关系中,所述任一候选地图类型的目标关联属性对应的权重值。
上述方法,可以实现对任一候选地图类型的任一关联属性对应的权重值进行更新,从而拓展终端的本地属性的变化渠道,使得上述基于每个候选地图类型各关联属性对应的属性值和权重值,对多个候选地图类型进行筛选确定出的目标地图类型更加准确,进而使得调用目标地图类型的目标地图功能得到的地图数据更具响应效果稳定性。
在一种可能的实现方式中,所述响应于针对所述目标应用的地图调用指令,通过所述应用程序层确定所述地图调用指令对应的目标地图功能,包括:
响应于针对所述目标应用的地图调用指令,通过所述应用程序层获取所述地图调用指令对应的使用场景信息;
基于所述地图调用指令对应的使用场景信息,以及使用场景信息与目标地图功能的关联关系,确定所述地图调用指令对应的目标地图功能。
上述方法,针对不同使用场景信息,确定目标地图功能,使得应用程序层后续通过调用目标地图功能对应的目标抽象服务接口即可获得该地图调用指令对应的地图数据,而无需关心底层实现细节,提高了代码的可读性和可理解性,也提高了代码的可维护性和可扩展性。
第二方面,本申请实施例提供一种多地图调用装置,应用于包含目标应用的终端,所述目标应用的软件架构包括应用程序层、地图抽象层和地图类型实现层,所述地图抽象层包括多个与地图功能一一对应的抽象服务接口,所述装置包括:
地图功能确定模块,用于响应于针对所述目标应用的地图调用指令,通过所述应用程序层确定所述地图调用指令对应的目标地图功能;
地图类型确定模块,用于调用所述目标地图功能对应的目标抽象服务接口,获取预先封装在所述目标抽象服务接口中的筛选逻辑,通过所述地图抽象层基于所述筛选逻辑,以及预设的每个候选地图类型的各关联属性,从所有候选地图类型中确定出目标地图类型;其中任一关联属性包括对应候选地图类型的数据传输接口的接口属性;
数据处理模块,用于通过所述地图类型实现层,调用所述目标地图类型的数据传输接口,获得所述地图调用指令对应的地图数据;用于将所述地图数据通过所述目标抽象服务接口发送至所述应用程序层。
在一种可能的实现方式中,所述地图类型确定模块具体用于:
通过所述地图抽象层执行所述筛选逻辑,基于预设的每个候选地图类型的各关联属性,以及各关联属性、属性值和权重值之间的对应关系,得到每个候选地图类型的各关联属性对应的属性值和权重值,其中,任一权重值表征与所述任一权重值对应的关联属性的重要度;
基于任一候选地图类型的各关联属性对应的属性值和权重值,得到所述任一候选地图类型对应的参考值;
基于各候选地图类型对应的参考值,从所有候选地图类型中确定所述目标地图类型。
在一种可能的实现方式中,所述接口属性包括接口耗时属性;在所述获得所述地图调用指令对应的地图数据之后,所述数据处理模块还用于:
通过所述地图抽象层基于所述目标地图类型的数据传输接口的调用时刻,以及接收到所述地图调用指令对应的地图数据的接收时刻,确定所述目标地图类型的数据传输接口的实际接口耗时;
若所述实际接口耗时位于预设接口耗时区间外,则基于所述实际接口耗时和所述接口耗时区间中的基准接口耗时之间的关系,对所述目标地图类型的接口耗时属性对应的属性值进行调整,其中,所述基准接口耗时是基于所述目标地图类型的数据传输接口的历史接口耗时确定的。
在一种可能的实现方式中,所述数据处理模块具体用于:
若所述实际接口耗时小于所述基准接口耗时,则基于所述基准接口耗时与所述实际接口耗时的差值,确定第一调整值,并将所述目标地图类型的接口耗时属性对应的属性值提高所述第一调整值;
若所述实际接口耗时大于所述基准接口耗时,则基于所述实际接口耗时与所述基准接口耗时的差值,确定第二调整值,并将所述目标地图类型的接口耗时属性对应的属性值降低所述第二调整值。
在一种可能的实现方式中,所述任一关联属性还包括所述终端的网络实时属性,若所述地图调用指令是启动指令,则所述地图类型确定模块还用于:
响应于所述启动指令,通过所述地图抽象层基于预设周期,对所述终端的网络实时属性对应的实时参数值进行检测;
每检测到一个实时参数值,将所述实时参数值与预设实时参数值区间进行比较,若所述实时参数值位于所述实时参数值区间外,则基于比较结果对所述网络实时属性对应的当前属性值进行更新;其中,首次更新的所述网络实时属性对应的当前属性值为预设的初始属性值。
在一种可能的实现方式中,通过如下方式更新任一候选地图类型的任一关联属性对应的权重值:
接收服务端发送的目标权重值,其中,所述目标权重值与所述任一候选地图类型的目标关联属性对应,所述目标关联属性是所述各关联属性中的任一个;
利用所述目标权重值替换所述目标关联属性、属性值和权重值之间的对应关系中,所述任一候选地图类型的目标关联属性对应的权重值。
在一种可能的实现方式中,所述地图功能确定模块具体用于:
响应于针对所述目标应用的地图调用指令,通过所述应用程序层获取所述地图调用指令对应的使用场景信息;
基于所述地图调用指令对应的使用场景信息,以及使用场景信息与目标地图功能的关联关系,确定所述地图调用指令对应的目标地图功能。
第三方面,本申请实施例提供一种电子设备,包括:
存储器,用于存储计算机程序或指令;
处理器,用于执行所述存储器中的计算机程序或指令,使得如第一方面中任一所述的方法被执行。
第四方面,本申请实施例提供一种计算机可读存储介质,当所述存储介质中的指令由处理器执行时,使得所述处理器能够执行上述第一方面中任一项所述的方法。
第五方面,本申请实施例提供一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行第一方面中任一项所述的方法。
另外,第二方面至第五方面中任意一种实现方式所带来的技术效果可参见第一方面中不同实现方式所带来的技术效果,此处不再赘述。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
图1为本申请实施例中一个应用场景示意图;
图2为本申请实施例中目标应用软件的软件架构示意图;
图3为本申请实施例中一种多地图调用方法的流程示意图;
图4为本申请实施例中一种确定目标地图功能的方法的流程示意图;
图5为本申请实施例中一种确定目标地图类型的方法的流程示意图;
图6为本申请实施例中一种对接口耗时属性对应的属性值进行调整的方法的流程示意图;
图7为本申请实施例中一种对网络实时属性对应的属性值进行更新的方法的流程示意图;
图8为本申请实施例中一种对任一候选地图类型的任一关联属性对应的权重值进行更新的方法的流程示意图;
图9为本申请实施例中一种多地图调用装置的逻辑架构示意图;
图10为本申请实施例中电子设备的实体架构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,并不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够在除了这里图示或描述的那些以外的顺序实施。
本申请实施例中,为了解决已有技术下一款应用软件仅能够按照预设代码调用一个地图服务商的地图数据,导致响应延迟大、响应效果不够准确等问题,本申请实施例提供一种多地图调用方法,应用于包含目标应用的终端,具体的,响应于针对目标应用的地图调用指令,通过目标应用的软件架构包括的应用程序层确定地图调用指令对应的目标地图功能;调用目标地图功能对应的目标抽象服务接口,通过目标应用的软件架构包括的地图抽象层基于预先封装在目标抽象服务接口中的筛选逻辑,以及预设的每个候选地图类型的各关联属性,从所有候选地图类型中确定出目标地图类型;其中,任一关联属性包括对应候选地图类型的数据传输接口的接口属性;通过目标应用的软件架构包括的地图类型实现层,调用该目标地图类型的数据传输接口,获得地图调用指令对应的地图数据,并将地图数据通过目标抽象服务接口发送至应用程序层。
这样,终端在每接收到针对目标应用的地图调用指令后,响应于该地图调用指令,首先,通过应用程序层确定该地图调用指令对应的目标地图功能,从而引导后续调用目标地图功能对应的目标抽象服务接口,通过地图抽象层基于预先封装在目标抽象服务接口中的筛选逻辑,以及预设的每个候选地图类型的各关联属性,从所有候选地图类型中确定出目标地图类型,从而得到针对目标地图功能表现较优的目标地图类型,后续再通过地图类型实现层调用该目标地图类型的数据传输接口,实现了多地图调用,保证获得到目标地图功能表现较优的该地图调用指令对应的地图数据,提高了响应速度,也提高了响应效果的精确度、保证了响应结果的稳定性。
进一步地,通过按照不同地图功能定义不同的抽象服务接口,即地图抽象层包括多个与地图功能一一对应的抽象服务接口,应用程序层只需通过统一的接口调用方式即可实现调用不同的地图功能,不需关心底层实现细节,提高了代码的可读性和可理解性。
下面结合附图对本申请优选的实施方式做出进一步详细说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请实施例及实施例中的特征可以相互组合。
参阅图1所示,其为本申请实施例的应用场景示意图。该应用场景包括包含目标应用的用户终端110、服务端120以及车载终端130,其中,用户终端110通过有线网络或者无线网络与服务端120相连接、车载终端130也通过有线网络或者无线网络与服务端120相连接。
用户终端110向服务端120发送订单,该订单可以是下单用户通过网约车平台服务器的下单端发起的,也可以是下单用户通过第三方平台服务器的下单端发起的,其中,订单包括起点位置信息、终点位置信息、用户当前位置信息、通讯方式等订单信息。
车载终端130向服务端120发送车辆的位置信息,以及接单情况等。
服务端120在接收到订单后,基于订单信息确定用户所在的地理区域;并基于接收到的车辆的位置信息以及接单情况,在订单信息所处的地理区域内确定未接单或即将完单的车辆,从而完成派单。
需要说明的是图1中的车载终端130的位置仅用于举例,二者具体在图中的位置,并不作为实际安装在车辆中的固定位置。车载终端130的位置也可以在车辆其他位置,比如车载终端130安装在车门处、前排座位之间等位置。
图2为本申请实施例中的目标应用的软件架构示意图。参阅图2所示,本申请实施例中,终端包括的目标应用的软件架构200包括应用程序层201、地图抽象层202和地图类型实现层203,其中,地图抽象层202包括多个与地图功能一一对应的抽象服务接口,地图功能包括如图2示出的地图功能1、……、地图功能4、……地图功能m;地图类型实现层203包括多个候选地图类型,如图2示出的候选地图类型1、候选地图类型2、……候选地图类型n。
本申请实施例中,通过按照不同地图功能定义不同抽象服务接口,实现地图功能与抽象服务接口一一对应,其中,地图功能包括定位服务地图功能、搜索服务地图功能、地图服务地图功能、地图覆盖物地图功能、司乘同显地图功能、辅助工具类地图功能等。
本申请实施例中,为了实现上述抽象服务接口,在地图类型实现层中创建多个地图实现类,分别对应不同的地图服务商(本申请实施例中记为候选地图类型);为了管理上述多个地图实现类,在地图抽象层中创建地图管理类。
具体实施中,响应于针对目标应用的地图调用指令,通过应用程序层使用地图管理类提供的抽象服务接口调用目标地图功能,由地图管理类基于筛选逻辑,以及每个候选地图类型的各关联属性,确定出目标地图类型;然后,获取该目标地图类型的目标对象,通过该目标对象调用目标地图类型的目标地图功能,并通过目标地图类型的回调得到该地图调用指令对应的地图数据,以及将地图数据返回给地图管理类;最后,地图管理类通过上述抽象服务接口将目标地图类型返回的地图数据返回给应用程序层;这样,应用程序层就可以得到该地图调用指令对应的地图数据,即所需求的地图功能的结果。
其中,在通过目标地图类型的回调得到该地图调用指令对应的地图数据之后,基于本次调用情况更新目标地图类型的任一关联属性对应的属性值,实现属性值的动态调整,为后续确定目标地图类型的准确性做准备。
由于上述调用过程中,应用程序层只是响应该地图调用指令,在确定目标地图功能之后,调用了目标地图功能对应的抽象服务接口,随即便得到了该地图调用指令对应的地图数据,具体执行获取该地图调用指令对应的地图数据的是地图管理类,以及地图实现类,因此,采用本申请实施例提供的目标应用的软件架构,应用程序层无需关心底层实现细节。
在介绍完本申请实施例的应用场景和目标应用的软件架构之后,参阅图3所示,本申请实施例中提供的一种多地图调用方法,该方法应用于包含上述目标应用的终端,该目标应用的软件架构包括应用程序层、地图抽象层和地图类型实现层,地图抽象层包括多个与地图功能一一对应的抽象服务接口。上述多地图调用方法的具体流程如下:
步骤300:响应于针对目标应用的地图调用指令,通过应用程序层确定该地图调用指令对应的目标地图功能。
本申请实施例中,上述地图调用指令可以是用户在终端的预设区域内执行相应的操作后触发的,比如,在终端的显示界面上,用户点击目标应用的APP图标触发的;又比如,在目标应用呈现在终端的应用内界面上,用户点击搜索栏内输入目的地地址而触发的。在本申请实施例中,不对触发针对目标应用的地图调用指令的具体操作进行限定。
具体实施中,在执行步骤300时,参阅图4所示,可以通过执行如下步骤通过应用程序层确定出该地图调用指令对应的目标地图功能:
步骤3001:响应于针对目标应用的地图调用指令,通过应用程序层获取该地图调用指令对应的使用场景信息。
步骤3002:基于该地图调用指令对应的使用场景信息,以及使用场景信息与目标地图功能的关联关系,确定该地图调用指令对应的目标地图功能。
其中,终端可以通过设备中配置的任一类型的传感器、任一种用户交互方式等,获得到用户需求信息,即该地图调用指令对应的使用场景信息。
本申请实施例中,可以在应用程序层中预先设置使用场景信息与目标功能的关联关系,上述关联关系可以基于具体业务流程进行配置;这样,在执行步骤3001通过应用程序层获取到该地图调用指令对应的使用场景信息之后,在执行步骤3002,基于使用场景信息与目标地图功能的关联关系,查询到该地图调用指令对应的使用场景信息所对应的目标地图功能,从而得到该地图调用指令对应的目标地图功能,其中,目标地图功能是上述地图功能中的至少一种,如定位服务地图功能、搜索服务地图功能等。
步骤310:调用该目标地图功能对应的目标抽象服务接口,获取预先封装在目标抽象服务接口中的筛选逻辑,通过地图抽象层基于筛选逻辑,以及预设的每个候选地图类型的各关联属性,从所有候选地图类型中确定出目标地图类型;其中,任一关联属性包括对应候选地图类型的数据传输接口的接口属性。
本申请实施例中,参阅图5所示,在执行步骤310中的通过地图抽象层基于筛选逻辑,以及预设的每个候选地图类型的各关联属性,从所有候选地图类型中确定出目标地图类型时,具体包括:
步骤3101:通过地图抽象层执行筛选逻辑,基于预设的每个候选地图类型的各关联属性,以及各关联属性、属性值和权重值之间的对应关系,得到每个候选地图类型的各关联属性对应的属性值和权重值,其中,任一权重值表征与所述任一权重值对应的关联属性的重要度。
步骤3102:基于任一候选地图类型的各关联属性对应的属性值和权重值,得到任一候选地图类型对应的参考值。
步骤3103:基于各候选地图类型对应的参考值,从所有候选地图类型中确定上述目标地图类型。
具体实施中,预先根据各个地图功能设置各自对应的各关联属性,并为每个候选地图类型设置不同地图功能下的各关联属性对应的属性值和权重值,其中,任一关联属性包括对应候选地图类型的数据传输接口的接口属性。
例如,假设地图调用指令对应的地图功能为定位服务地图功能。那么,预先根据该定位服务地图功能设置各个关联属性。
假设根据该定位服务地图功能设置的接口属性包括接口耗时属性、接口价值属性和接口可用性属性中至少一个。
那么,针对接口属性包括接口耗时属性,则为每个候选地图类型的数据传输接口的接口耗时属性设置该接口耗时属性对应的属性值和权重值,并将上述接口耗时属性、属性值和权重值之间的对应关系进行保存。
针对接口属性包括接口价值属性,则为每个候选地图类型的数据传输接口的接口价值属性设置该接口价值属性对应的属性值和权重值,将上述接口价值属性、属性值和权重值之间的对应关系进行保存。
针对接口属性包括接口可用性属性,则为每个候选地图类型的数据传输接口的接口可用性属性设置该接口可用性属性对应的属性值和权重值,并将上述接口可用性属性、属性值和权重值之间的对应关系进行保存。
在一些实施例中,可以设置每个关联属性的初始属性值均为50,初始权重值均为1;可以每个关联属性的初始属性值不同,如根据关联属性的重要度为每个关联属性设置初始属性值。
示例性的,以搜索服务地图功能为例。假设搜索服务地图功能的接口属性包括接口耗时属性、接口价值属性、搜索结果数量属性和接口可用性属性中至少一个。通常认为搜索服务地图功能对应的搜索接口的搜索结果可用性对使用场景很重要,则可以为接口耗时属性和接口可用性属性分别设置较高的属性值,如100;而对一些不太重要的关联属性,如搜索结果数量属性,则可以适当降低属性值,如30。
具体实施中,那么,在执行步骤300中的响应于针对目标应用的地图调用指令,通过应用程序层确定该地图调用指令对应的目标地图功能后,执行步骤310中的调用目标地图功能对应的目标抽象服务接口,获取预先封装在该目标抽象服务接口中的筛选逻辑,再执行步骤3101,通过地图抽象层执行该筛选逻辑,基于每个候选地图类型的各关联属性,查询对应的关联属性、属性值和权重值之间的对应关系,得到每个候选地图类型的各关联属性对应的属性值和权重值。
然后,执行步骤3102,针对每个候选地图类型,利用每个候选地图类型的各个关联属性对应的属性值和权重值,计算得到该候选地图类型对应的参考值。具体实施中,可将每个候选地图类型的各个关联属性对应的属性值和对应的权重值的乘积之和,作为该候选地图类型对应的参考值,即假设有f个关联属性,则该候选地图类型对应的参考值=X1*W1+X2*W2+……+Xf*Wf,其中,X1、X2、……、Xf为每个关联属性对应的属性值,X1、X2、……、Xf为每个关联属性对应的权重值。
最后,执行步骤3103,将各个候选地图类型对应的参考值进行比较,从各个候选地图类型中选取出最大值,并将最大值对应的候选地图类型确定为目标地图类型。
步骤320:通过地图类型实现层,调用该目标地图类型的数据传输接口,获得该地图调用指令对应的地图数据。
本申请实施例中,在执行完步骤310后,确定出了目标地图类型,那么,执行步骤320,通过地图类型实现层,调用目标地图类型的数据传输接口,将该地图调用指令发送至目标地图类型对应的服务器,以使目标地图类型对应的服务器基于该地图调用指令,利用目标地图功能得到该地图调用指令对应的地图数据,并将该地图调用指令对应的地图数据通过上述数据传输接口发送至终端,从而终端获得该地图调用指令对应的地图数据。
在一些实施例中,由于不同地图类型的地图数据格式不同,因此,在执行步骤320之后,在执行步骤330之前,可对地图调用指令对应的地图数据进行格式统一,以便于应用程序层可以顺利使用目标地图功能返回的结果。
本申请实施例中,以接口属性包括接口耗时属性为例,在执行完步骤320后,参阅图6所示,通过如下方式对该目标地图类型的接口耗时属性的属性值进行调整:
步骤600:通过该地图抽象层基于目标地图类型的数据传输接口的调用时刻,以及接收到地图调用指令对应的地图数据的接收时刻,确定目标地图类型的数据传输接口的实际接口耗时。
步骤610:若实际接口耗时位于预设接口耗时区间外,则基于实际接口耗时和接口耗时区间中的基准接口耗时之间的关系,对目标地图类型的接口耗时属性对应的属性值进行调整,其中,基准接口耗时是基于目标地图类型的数据传输接口的历史接口耗时确定的。
本申请实施例中,在执行步骤610时,根据实际接口耗时和接口耗时区间中的基准接口耗时之间的关系,包含但不限于如下两种情况:
情况一,若实际接口耗时小于基准接口耗时,则基于基准接口耗时与实际接口耗时的差值,确定第一调整值,并将目标地图类型的接口耗时属性对应的属性值提高第一调整值。
具体实施中,情况一中,可以在确定实际接口耗时小于基准接口耗时时,首先,将基准接口耗时与实际接口耗时执行减法操作,得到两者的差值,然后,将该差值与预设的各个差值区间进行比较,在确定该差值落入第一目标差值区间后,将第一目标差值区间对应的数值作为第一调整值,再将该第一目标地图类型的接口耗时属性对应的属性值提高第一调整值,从而得到新的属性值,并将新的属性值替换原属性值进行存储。
在一些实施例中,还可以预先设置差值和第一调整值之间的关系,如设置差值与第一调整值正相关,即当差值越大时第一调整值也越大,这样,可以根据差值大小确定第一调整值,从而动态调整目标地图类型的接口耗时属性的属性值,进而使得基于各关联属性确定出的目标地图类型的调用延迟更小,响应更加稳定。
在一些实施例中,上述第一调整值也可以是一个固定数值,即在情况一中,若实际接口耗时小于基准接口耗时,则直接将目标地图类型的接口耗时属性对应的属性值提高第一调整值。示例性的,若目标地图类型的接口耗时属性对应的属性值为50,以及第一调整值为2,则在实际接口耗时小于基准接口耗时时,将目标地图类型的接口耗时属性对应的属性值提高2,即新的属性值为52。
情况二,若实际接口耗时大于基准接口耗时,则基于实际接口耗时与基准接口耗时的差值,确定第二调整值,并将目标地图类型的接口耗时属性对应的属性值降低第二调整值。
具体实施中,情况二中,可以在确定实际接口耗时大于基准接口耗时时,首先,将实际接口耗时与基准接口耗时执行减法操作,得到两者的差值,然后,将该差值与预设的各个差值区间进行比较,在确定该差值落入第二目标差值区间后,将第二目标差值区间对应的数值作为第二调整值,再将该第二目标地图类型的接口耗时属性对应的属性值降低第二调整值,从而得到新的属性值,并将新的属性值替换原属性值进行存储。
在一些实施例中,还可以预先设置差值和第二调整值之间的关系,如设置差值与第二调整值正相关(由于差值是将实际接口耗时与基准接口耗时执行减法操作得到的),即当差值越大时第二调整值也越大,这样,可以根据差值大小确定第二调整值,从而动态调整目标地图类型的接口耗时属性的属性值,进而使得基于各关联属性确定出的目标地图类型的调用延迟更小,响应更加稳定。
在一些实施例中,上述第二调整值同样也可以是一个固定数值,即在情况二中,若实际接口耗时大于基准接口耗时,则直接将目标地图类型的接口耗时属性对应的属性值降低第二调整值。示例性的,若目标地图类型的接口耗时属性对应的属性值仍为50,以及第二调整值为4,则在实际接口耗时大于基准接口耗时时,将目标地图类型的接口耗时属性对应的属性值降低4,即新的属性值为46。
在一些实施例中,上述基准接口耗时可以是目标地图类型的数据传输接口的各个历史接口耗时的平均值、中位值等。
本申请实施例中,通常每个候选地图类型的接口价值属性是固定,因此,可不对接口价值属性对应的属性值进行调整。
在一些实施例中,针对每个候选地图类型的接口可用性属性对应的属性值,可以是统计每个候选地图类型的可用性数据,并对统计后的可用性数据进行分析确定的,其中,可用性数据是服务端基于预设发送周期下发的。
在一些实施例中,终端可以按照预设周期向服务端发送接口可用性属性的属性值获取请求,以及时获取到每个候选地图类型的接口可用性属性对应的属性值;而服务端的每个候选地图类型的接口可用性属性对应的属性值可以是根据统计的每个候选地图类型的可用性数据的分析结果确定的,也可以是基于其他方式确定的,本申请实施例中不对不具体限定。
在另一些实施例中,终端可以被动接收服务端推送的每个候选地图类型的接口可用性属性对应的属性值,即服务端在根据每个候选地图类型的可用性统计数据进行数据分析,得到对应的接口可用性属性对应的属性值后,向终端推送修改后的每个候选地图类型的接口可用性属性对应的属性值。
本申请实施例中,上述任一关联属性还包括终端的网络实时属性,如网速、带宽等属性。
具体实施中,参阅图7所示,若上述地图调用指令是启动指令,则上述多地图调用方法还包括:
步骤700:响应于启动指令,通过地图抽象层基于预设周期,对终端的网络实时属性对应的实时参数值进行检测。
步骤710:每检测到一个实时参数值,将实时参数值与预设实时参数值区间进行比较,若实时参数值位于实时参数值区间外,则基于比较结果对网络实时属性对应的当前属性值进行更新;其中,首次更新的网络实时属性对应的当前属性值为预设的初始属性值。
本申请实施例中,在执行步骤710中的基于比较结果对网络实时属性对应的当前属性值进行更新,具体包括如下两种情况:
情况1,若实际参数值小于实时参数值区间的左端点值,则基于左端点值与实际参数值的差值,确定第三调整值,并将目标地图类型的网络实时属性对应的属性值降低第三调整值。
情况2,若实际参数值大于实时参数值区间的右端点值,则基于实际参数值与右端点值的差值,确定第四调整值,并将目标地图类型的网络实时属性对应的属性值提高第四调整值。
需要说明的是,在上述情况1中确定第三调整值,以及在上述情况2中确定第四调整值的方式与上述确定第一调整值和第二调整值的方式类似,在此不再赘述。
本申请实施例中,针对上述网络实时属性这一类数据变换频繁的属性进行周期性更新,可以实时监控上述属性的准确性,以保证在使用该属性对应的属性值进行候选地图类型筛选时,确定出更加贴合当前网络实际情况的目标地图类型,从而保证在相应使用场景(如司乘同显地图功能的使用场景)下调用该目标地图类型可以提高响应速度、响应结果稳定性及响应效果精确度。
在介绍完各个关联属性对应的属性值的获取方式,以及调整方式之后,下面对每个候选地图类型的各关联属性对应的权重值的获取方式,以及更新方式进行介绍。
本申请实施例中,每个候选地图类型的各关联属性对应的权重值可以是在每次响应于针对目标应用的启动指令,目标应用初始化完成后,在对任一候选地图类型进行地图初始化时,向服务端发送请求获取的;具体实施中,响应于针对目标应用的启动指令,在对任一候选地图类型进行地图初始化时,通过应用程序层将目标应用的应用类型发送至地图抽象层,其中,应用类型包括用户端和司机端中的任意一种;然后,通过地图抽象层基于该应用类型,向服务端发送权重值获取请求;接收服务器返回的每个候选地图类型的各关联属性对应的权重值。
具体实施中,参阅图8所示,可以通过如下方式更新任一候选地图类型的任一关联属性对应的权重值:
步骤800:接收服务端发送的目标权重值,其中,目标权重值与任一候选地图类型的目标关联属性对应,目标关联属性是上述各关联属性中的任一个。
步骤810:利用目标权重值替换目标关联属性、属性值和权重值之间的对应关系中,上述任一候选地图类型的目标关联属性对应的权重值。
本申请实施例中,服务端下发的任一候选地图类型的任一关联属性对应的权重值,可以是人为设置的,在人为设置完毕后,触发服务端向各终端下发任一候选地图类型的任一关联属性对应的权重值;也可以是根据大数据分析确定的,在确定任一候选地图类型的任一关联属性对应的权重值后,向各终端下发任一候选地图类型的任一关联属性对应的权重值。
步骤330:将该地图数据通过上述目标抽象服务接口发送至该应用程序层。
本申请实施例中,通过执行步骤320,可以获取该地图调用指令对应的地图数据,然后,执行步骤330,将该地图数据通过目标抽象服务接口发送至应用程序层。
在一些实施例中,在执行步骤330之后,通过应用程序层将地图数据显示在预设显示区域内;或者,通过应用程序层直接地图数据进行进一步处理,得到最终显示在预设显示区域内的地图数据,然后,将得到的最终显示在预设显示区域内的地图数据进行显示。
采用本申请实施例中的多地图调用方法,通过按照不同地图功能定义不同的抽象服务接口,即地图抽象层包括多个与地图功能一一对应的抽象服务接口,这样,应用程序层只需通过统一的接口调用方式即可实现调用不同的地图功能,不需关心底层实现细节,提高了代码的可读性和可理解性。
具体实施中,响应于针对目标应用的地图调用指令,在调用地图类型的数据传输接口获取该地图调用指令对应的地图数据之前,通过应用程序层确定该地图调用指令对应的目标地图功能,再调用目标地图功能对应的抽象服务接口,基于筛选逻辑,以及每个候选地图类型的各关联属性,从所有候选地图类型中确定出目标地图类型,实现了多地图调用,且支持动态切换地图类型,从而提高了响应速度、保证了响应结果的稳定性。
进一步地,通过将目标应用的软件架构进行重新设计,分为应用程序层、地图抽象层和地图类型实现层,将地图类型实现层与应用程序层分离,可以实现根据实际需要对地图类型进行更新和修改,而不影响应用程序层的功能,同时也为应用程序层涉及的业务流程的发展和拓展创造条件,提高了代码的可维护性和可扩展性。
基于同一发明构思,参阅图9所示,本申请实施例中提供一种多地图调用装置,应用于包含目标应用的终端,所述目标应用的软件架构包括应用程序层、地图抽象层和地图类型实现层,所述地图抽象层包括多个与地图功能一一对应的抽象服务接口,所述装置包括:
地图功能确定模块910,用于响应于针对所述目标应用的地图调用指令,通过所述应用程序层确定所述地图调用指令对应的目标地图功能;
地图类型确定模块920,用于调用所述目标地图功能对应的目标抽象服务接口,获取预先封装在所述目标抽象服务接口中的筛选逻辑,通过所述地图抽象层基于所述筛选逻辑,以及预设的每个候选地图类型的各关联属性,从所有候选地图类型中确定出目标地图类型;其中任一关联属性包括对应候选地图类型的数据传输接口的接口属性;
数据处理模块930,用于通过所述地图类型实现层,调用所述目标地图类型的数据传输接口,获得所述地图调用指令对应的地图数据;用于将所述地图数据通过所述目标抽象服务接口发送至所述应用程序层。
在一种可能的实现方式中,所述地图类型确定模块920具体用于:
通过所述地图抽象层执行所述筛选逻辑,基于预设的每个候选地图类型的各关联属性,以及各关联属性、属性值和权重值之间的对应关系,得到每个候选地图类型的各关联属性对应的属性值和权重值,其中,任一权重值表征与所述任一权重值对应的关联属性的重要度;
基于任一候选地图类型的各关联属性对应的属性值和权重值,得到所述任一候选地图类型对应的参考值;
基于各候选地图类型对应的参考值,从所有候选地图类型中确定所述目标地图类型。
在一种可能的实现方式中,所述接口属性包括接口耗时属性;在所述获得所述地图调用指令对应的地图数据之后,所述数据处理模块930还用于:
通过所述地图抽象层基于所述目标地图类型的数据传输接口的调用时刻,以及接收到所述地图调用指令对应的地图数据的接收时刻,确定所述目标地图类型的数据传输接口的实际接口耗时;
若所述实际接口耗时位于预设接口耗时区间外,则基于所述实际接口耗时和所述接口耗时区间中的基准接口耗时之间的关系,对所述目标地图类型的接口耗时属性对应的属性值进行调整,其中,所述基准接口耗时是基于所述目标地图类型的数据传输接口的历史接口耗时确定的。
在一种可能的实现方式中,所述数据处理模块930具体用于:
若所述实际接口耗时小于所述基准接口耗时,则基于所述基准接口耗时与所述实际接口耗时的差值,确定第一调整值,并将所述目标地图类型的接口耗时属性对应的属性值提高所述第一调整值;
若所述实际接口耗时大于所述基准接口耗时,则基于所述实际接口耗时与所述基准接口耗时的差值,确定第二调整值,并将所述目标地图类型的接口耗时属性对应的属性值降低所述第二调整值。
在一种可能的实现方式中,所述任一关联属性还包括所述终端的网络实时属性,若所述地图调用指令是启动指令,则所述地图类型确定模块920还用于:
响应于所述启动指令,通过所述地图抽象层基于预设周期,对所述终端的网络实时属性对应的实时参数值进行检测;
每检测到一个实时参数值,将所述实时参数值与预设实时参数值区间进行比较,若所述实时参数值位于所述实时参数值区间外,则基于比较结果对所述网络实时属性对应的当前属性值进行更新;其中,首次更新的所述网络实时属性对应的当前属性值为预设的初始属性值。
在一种可能的实现方式中,通过如下方式更新任一候选地图类型的任一关联属性对应的权重值:
接收服务端发送的目标权重值,其中,所述目标权重值与所述任一候选地图类型的目标关联属性对应,所述目标关联属性是所述各关联属性中的任一个;
利用所述目标权重值替换所述目标关联属性、属性值和权重值之间的对应关系中,所述任一候选地图类型的目标关联属性对应的权重值。
在一种可能的实现方式中,所述地图功能确定模块910具体用于:
响应于针对所述目标应用的地图调用指令,通过所述应用程序层获取所述地图调用指令对应的使用场景信息;
基于所述地图调用指令对应的使用场景信息,以及使用场景信息与目标地图功能的关联关系,确定所述地图调用指令对应的目标地图功能。
基于同一发明构思,本申请实施例中提供一种电子设备,下面参照图10来描述根据本申请的这种实施方式的电子设备100。图10显示的电子设备100仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图10所示,电子设备100以通用电子设备的形式表现。电子设备100的组件可以包括但不限于:上述至少一个处理器101、上述至少一个存储器102、连接不同系统组件(包括存储器102和处理器101)的总线103。
总线103表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器、外围总线、处理器或者使用多种总线结构中的任意总线结构的局域总线。
存储器102可以包括易失性存储器形式的可读介质,例如随机存取存储器(RAM)1021和/或高速缓存存储器1022,还可以进一步包括只读存储器(ROM)1023。
存储器102还可以包括具有一组(至少一个)程序模块1024的程序/实用工具1025,这样的程序模块1024包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
电子设备100也可以与一个或多个外部设备104(例如键盘、指向设备等)通信,还可与一个或者多个使得用户能与电子设备100交互的设备通信,和/或与使得该电子设备100能与一个或多个其它电子设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口105进行。并且,电子设备100还可以通过网络适配器106与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器106通过总线103与用于电子设备100的其它模块通信。应当理解,尽管图中未示出,可以结合电子设备100使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
基于同一发明构思,本申请实施例提供一种计算机可读存储介质,当所述存储介质中的指令由处理器执行时,使得所述处理器能够执行上述任一项所述的方法。由于上述计算机可读存储介质解决问题的原理与多地图调用方法相似,因此上述计算机可读存储介质的实施可以参见方法的实施,重复之处不再赘述。
基于同一发明构思,本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得计算机执行如前文论述任一的方法。由于上述计算机程序产品解决问题的原理与多地图调用方法相似,因此上述计算机程序产品的实施可以参见方法的实施,重复之处不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图中的一个流程或多个流程和/或方框图中的一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图中的一个流程或多个流程和/或方框图中的一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图中的一个流程或多个流程和/或方框图中的一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种多地图调用方法,其特征在于,应用于包含目标应用的终端,所述目标应用的软件架构包括应用程序层、地图抽象层和地图类型实现层,所述地图抽象层包括多个与地图功能一一对应的抽象服务接口,所述方法包括:
响应于针对所述目标应用的地图调用指令,通过所述应用程序层确定所述地图调用指令对应的目标地图功能;
调用所述目标地图功能对应的目标抽象服务接口,获取预先封装在所述目标抽象服务接口中的筛选逻辑,通过所述地图抽象层执行所述筛选逻辑,基于预设的每个候选地图类型的各关联属性,以及各关联属性、属性值和权重值之间的对应关系,得到每个候选地图类型的各关联属性对应的属性值和权重值,其中,任一关联属性包括对应候选地图类型的数据传输接口的接口属性,任一权重值表征与所述任一权重值对应的关联属性的重要度;
基于任一候选地图类型的各关联属性对应的属性值和权重值,得到所述任一候选地图类型对应的参考值;
基于各候选地图类型对应的参考值,从所有候选地图类型中确定目标地图类型;
通过所述地图类型实现层,调用所述目标地图类型的数据传输接口,获得所述地图调用指令对应的地图数据;
将所述地图数据通过所述目标抽象服务接口发送至所述应用程序层。
2.如权利要求1所述的方法,其特征在于,所述接口属性包括接口耗时属性;在所述获得所述地图调用指令对应的地图数据之后,还包括:
通过所述地图抽象层基于所述目标地图类型的数据传输接口的调用时刻,以及接收到所述地图调用指令对应的地图数据的接收时刻,确定所述目标地图类型的数据传输接口的实际接口耗时;
若所述实际接口耗时位于预设接口耗时区间外,则基于所述实际接口耗时和所述接口耗时区间中的基准接口耗时之间的关系,对所述目标地图类型的接口耗时属性对应的属性值进行调整,其中,所述基准接口耗时是基于所述目标地图类型的数据传输接口的历史接口耗时确定的。
3.如权利要求2所述的方法,其特征在于,所述基于所述实际接口耗时和所述接口耗时区间中的基准接口耗时之间的关系,对所述目标地图类型的接口耗时属性对应的属性值进行调整,包括:
若所述实际接口耗时小于所述基准接口耗时,则基于所述基准接口耗时与所述实际接口耗时的差值,确定第一调整值,并将所述目标地图类型的接口耗时属性对应的属性值提高所述第一调整值;
若所述实际接口耗时大于所述基准接口耗时,则基于所述实际接口耗时与所述基准接口耗时的差值,确定第二调整值,并将所述目标地图类型的接口耗时属性对应的属性值降低所述第二调整值。
4.如权利要求1-3任一所述的方法,其特征在于,所述任一关联属性还包括所述终端的网络实时属性,若所述地图调用指令是启动指令,则所述方法还包括:
响应于所述启动指令,通过所述地图抽象层基于预设周期,对所述终端的网络实时属性对应的实时参数值进行检测;
每检测到一个实时参数值,将所述实时参数值与预设实时参数值区间进行比较,若所述实时参数值位于所述实时参数值区间外,则基于比较结果对所述网络实时属性对应的当前属性值进行更新;其中,首次更新的所述网络实时属性对应的当前属性值为预设的初始属性值。
5.如权利要求1-3任一所述的方法,其特征在于,通过如下方式更新任一候选地图类型的任一关联属性对应的权重值:
接收服务端发送的目标权重值,其中,所述目标权重值与所述任一候选地图类型的目标关联属性对应,所述目标关联属性是所述各关联属性中的任一个;
利用所述目标权重值替换所述目标关联属性、属性值和权重值之间的对应关系中,所述任一候选地图类型的目标关联属性对应的权重值。
6.如权利要求1-3任一所述的方法,其特征在于,所述响应于针对所述目标应用的地图调用指令,通过所述应用程序层确定所述地图调用指令对应的目标地图功能,包括:
响应于针对所述目标应用的地图调用指令,通过所述应用程序层获取所述地图调用指令对应的使用场景信息;
基于所述地图调用指令对应的使用场景信息,以及使用场景信息与目标地图功能的关联关系,确定所述地图调用指令对应的目标地图功能。
7.一种多地图调用装置,其特征在于,应用于包含目标应用的终端,所述目标应用的软件架构包括应用程序层、地图抽象层和地图类型实现层,所述地图抽象层包括多个与地图功能一一对应的抽象服务接口,所述装置包括:
地图功能确定模块,用于响应于针对所述目标应用的地图调用指令,通过所述应用程序层确定所述地图调用指令对应的目标地图功能;
地图类型确定模块,用于调用所述目标地图功能对应的目标抽象服务接口,获取预先封装在所述目标抽象服务接口中的筛选逻辑,通过所述地图抽象层执行所述筛选逻辑,基于预设的每个候选地图类型的各关联属性,以及各关联属性、属性值和权重值之间的对应关系,得到每个候选地图类型的各关联属性对应的属性值和权重值,其中,任一关联属性包括对应候选地图类型的数据传输接口的接口属性,任一权重值表征与所述任一权重值对应的关联属性的重要度;基于任一候选地图类型的各关联属性对应的属性值和权重值,得到所述任一候选地图类型对应的参考值;基于各候选地图类型对应的参考值,从所有候选地图类型中确定目标地图类型;
数据处理模块,用于通过所述地图类型实现层,调用所述目标地图类型的数据传输接口,获得所述地图调用指令对应的地图数据;用于将所述地图数据通过所述目标抽象服务接口发送至所述应用程序层。
8.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序或指令;
处理器,用于执行所述存储器中的计算机程序或指令,使得如权利要求1-6中任一所述的方法被执行。
9.一种计算机可读存储介质,其特征在于,当所述存储介质中的指令由处理器执行时,使得所述处理器能够执行如权利要求1-6中任一所述的方法。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行如权利要求1-6中任一项所述的方法。
CN202310413091.0A 2023-04-18 2023-04-18 一种多地图调用方法、装置、设备及存储介质 Active CN116501516B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310413091.0A CN116501516B (zh) 2023-04-18 2023-04-18 一种多地图调用方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310413091.0A CN116501516B (zh) 2023-04-18 2023-04-18 一种多地图调用方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN116501516A CN116501516A (zh) 2023-07-28
CN116501516B true CN116501516B (zh) 2024-03-22

Family

ID=87322373

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310413091.0A Active CN116501516B (zh) 2023-04-18 2023-04-18 一种多地图调用方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN116501516B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106855881A (zh) * 2016-12-16 2017-06-16 北京奇鱼时代科技有限公司 一种基于移动设备的多地图切换的方法和装置
CN115269050A (zh) * 2022-08-03 2022-11-01 平安壹钱包电子商务有限公司 多地图调用方法及装置、存储介质、计算机设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111708858B (zh) * 2020-06-10 2023-09-05 北京百度网讯科技有限公司 一种地图数据处理方法、装置、设备以及存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106855881A (zh) * 2016-12-16 2017-06-16 北京奇鱼时代科技有限公司 一种基于移动设备的多地图切换的方法和装置
CN115269050A (zh) * 2022-08-03 2022-11-01 平安壹钱包电子商务有限公司 多地图调用方法及装置、存储介质、计算机设备

Also Published As

Publication number Publication date
CN116501516A (zh) 2023-07-28

Similar Documents

Publication Publication Date Title
KR101895251B1 (ko) 대화 처리 방법, 대화 관리 시스템 및 컴퓨터 기기
JP4864321B2 (ja) モバイル装置内で位置データを処理するための方法、及び改善された位置データ処理能力を有するモバイル装置
US20060247937A1 (en) Method and apparatus for a context-based service look up
JP5433538B2 (ja) 通信量削減方法
CN110752936A (zh) 流量计费方法与装置、存储介质、电子设备
CN113343128A (zh) 用于推送信息的方法、装置、设备以及存储介质
CN115495133A (zh) Dbc动态自适应更新方法、装置、电子设备及存储介质
CN111721312B (zh) 一种运行轨迹生成方法和装置
CN111141303A (zh) 路线查询方法、装置、系统、设备及计算机可读存储介质
CN116501516B (zh) 一种多地图调用方法、装置、设备及存储介质
CN105450763B (zh) 一种车联网处理系统
CN101354262A (zh) 基于导航系统的数据下载方法及数据下载系统
CN115269050A (zh) 多地图调用方法及装置、存储介质、计算机设备
US20210382732A1 (en) Pre-generating data for user interface latency improvement
US11842640B2 (en) Computing system and method for operating a computing system
CN113551684A (zh) 多屏交互的导航方法、装置、电子设备及存储介质
JP7451962B2 (ja) 配車システム、配車方法、及び配車プログラム
CN111813467A (zh) 一种界面刷新方法、装置及可读存储介质
CN110837991A (zh) 一种提高快递配送效率的方法、装置、系统
CN113485860B (zh) 一种数据处理方法、设备、存储介质及故障定位系统
CN115185667B (zh) 可视化应用的加速方法、装置、电子设备和存储介质
CN111522895B (zh) 一种数据处理方法、装置、电子设备和存储介质
WO2014078983A1 (en) Device and method for searching for a vehicle maintenance shop
US20090183172A1 (en) Middleware Bridge System And Method
CN117251303A (zh) 导航地址的分享方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant