admin管理员组

文章数量:1532656

2024年1月15日发(作者:)

主流网络地图应用开发API技术研究

龙际梦;刘宏建;蔡中祥;张琳翔

【摘 要】使用网络地图API,开发者可以非常方便的调用在线地图中的资源,实现各种各样的地图第三方应用.介绍了几种国内主流网络地图API技术,列出开发者选用网络地图API应考虑的因素,并对其进行了比较.为用户了解网络地图API,选择合适的地图服务提供依据.

【期刊名称】《北京测绘》

【年(卷),期】2015(000)003

【总页数】4页(P79-82)

【关键词】网络地图API;腾讯地图API;高德地图API;百度地图API;天地图API

【作 者】龙际梦;刘宏建;蔡中祥;张琳翔

【作者单位】信息工程大学地理空间信息学院,河南郑州450000;信息工程大学地理空间信息学院,河南郑州450000;信息工程大学地理空间信息学院,河南郑州450000;信息工程大学地理空间信息学院,河南郑州450000

【正文语种】中 文

【中图分类】P208

1 引言

电子地图技术与网络技术的不断发展使我们构建基于位置的地理信息服务方式越来越多样化。当前各门户网站都推出了相应的地理信息服务,并开放了针对自身地图

数据的应用程序开 发 接 口(Application Program Interface,API)[1],方便用户进行个性化开发。国内比较常用的地图API主要包括腾讯地图API、高德地图API、百度地图API、天地图API等。

目前,与地图API有关的研究以基于地图API进行地理信息系统的开发为主。然而,不同地图API采用独立的开发环境和技术,针对的服务平台多样,功能也有所差异,用户在选择开发平台时无所适从 [2-5]。本文从功能结构、API形式、兼容的客户端、地图形式及功能服务及API性能等方面对主流网络地图应用开发主流API技术进行研究,为用户以及开发者选择地图API提供参考。

2 网络地图API技术

地图API应用程序采用多层B/S架构搭建在线地图服务平台,结构层次分明,易于维护,保证系统运行的稳定性和高效性 [6]。如图1所示。

图1 地图API基本架构

(1)用户层和地图接口:提供交互式操作界面,用户可方便获得诸如基础地图浏览、本地搜索、路线规划等数据服务。

(2)业务逻辑层:实现用户请求的空间数据和业务逻辑关系的处理操作,是架构的核心部分。

(3)数据层:负责空间数据及属性数据的管理工作,为地图服务提供基础数据

[2]。

由地图API提供的应用服务器和地图服务器一起完成地图数据的提供、处理、发布等一系列服务,各项服务应用请求以XML方式表达,可让第三方网站通过编程的方式调用地图数据库中的信息,嵌入大量的在线地图和网络服务。[7-8]

3 主流网络地图应用开发API技术分析

3.1 功能结构分析

用户对网络地图API最直接的体验来自于网络地图API的功能服务。功能的多少、

便捷性、人性化程度以及实用性往往是网络地图API最重要的因素。本文从功能结构入手,对各个网络地图API进行分析。

网络地图API均包含地图类、控件类、覆盖物类、服务类、基础类、街景类等,基本都能满足用户和开发者的需求。

其主要的不同之处在于,腾讯地图API包括MVC类,使用MVC类可以将业务模型与控制器的实现代码分离,从而使同一个程序可以使用不同的表现形式[9-10];高德地图 API包括云图类,ataLayer云数据图层,允许开发者将存储在LBS云数据管理平台中的数据作为一个图层叠加到地图上,也可以将经过一定筛选条件筛选出来的数据作为一个图层加载到地图上,ataSearch云数据检索服务,为开发者提供对自有数据的空间检索服务;百度地图API和天地图API包括了右键菜单类,可以在地图上添加自定义内容的右键菜单。如图2-图5所示。

图2 腾讯地图API功能结构

图3 高德地图API功能结构

图4 百度地图API功能结构

图5 天地图API功能结构

3.2 网络地图API形式分析

由于开发环境和开发方法的不同,网络地图API服务商开发的网络地图API形式以及数量各不相同。本文对地图服务提供的API形式进行比较,如表1所示。百度地图API支持的开发环境相对丰富,天地图API支持的开发环境则相对较少。

3.3 地图形式及功能服务分析

各网络地图API所采用的数据来源、开发方法不同,形式和服务也不一样。为让用户选择合适的地图服务,从地图形式和常规功能方面对各网络地图API进行比较。如表2所示。常规功能方面,各网络地图API均能基本满足浅层次应用需求,

具备标注、地图操作、公交查询、自驾导航、地理编码、GPS定位等功能。[3]值得一提的是,腾讯地图API在街景、高德地图在实时路况功能方面具有一定优势。另外,天地图API是唯一提供三维地图形式的地图API。

表1 地图服务提供的API形式(注:√表示有该功能,―表示无该功能)API

JavaScript API腾讯地图API 高德地图API 百度地图API 天地图√√√√Flash

API――√―Android地图SDK √ √ √ √Android定位SDK √ √ √ ―Android导航SDK ― √ √ ―Android街景SDK ― √ ― ―Android全景SDK ― ― √ ―iOS地图SDK √

√ √ √iOS导航SDK ― ― √ ―iOS全景SDK ― ― √ ―Windows Phone SDK―

√ ― ―Windows 8SDK―√――URI API√√√―WebService API√―√―静态地图API √ √

√ ―街景静态图API √ ― ― ―车联网API ― ― √ ―LBS云 ― ― √ ―

表2 地图形式及功能服务(注:√表示有该功能,―表示无该功能)API普通地图腾讯地图API 高德地图API 百度地图API 天地图√√√√卫星地图 √ √ √ √地形图

√ ― ― √三维地图 ― ― ― √街景 √ √ ― √实时路况 ― √ √ ―

3.4 性能分析

对网络地图API性能的测试,本文以Load-Runner 11.0为测试工具,测试并发用户数为100时,加载地图的平均事务响应时间、平均可用物理内存数以及平均吞吐量三个方面的数据。其中,事务响应时间是通过记录用户请求的开始时间和服务器返回内容到客户端时间的差值来计算用户操作响应时间的;平均可用物理内存数越高说明加载该地图所耗物理内存数越少;平均吞吐量表示服务器向客户端传输速度的大小。测试结果如表3、图6-图8所示。

表3 地图API性能测试数据19.159 41.611 14.023 66.243平均可用物理内存数(MB) 1454.000 1453.667 1495.095 1425.095平均吞吐量(字节/秒)API平均事务响应时间(秒)腾讯地图API 高德地图API 百度地图API 天地图686145 641436 704740 1036275

根据表3制成的柱状图如下:

图6 平均事务响应时间

图7 平均可用物理内存数

图8 平均吞吐量

从上述图表可以清晰的看出,百度地图API在响应时间、占用物理内存数方面较其它网络地图API有一定优势。此外,天地图API的平均吞吐量是最大的。

4 总结

在线地图服务发展,开拓了一个崭新的电子地图公众服务时代。本文分析了各个网络地图API的基本架构,并且从地图服务提供的API形式、兼容的客户端、地图形式及功能服务、地图性能等方面进行了对比。为用户了解网络地图API、基于网络地图API进行开发提供了参考依据,也为地图服务商们改善产品技术、完善产品功能,从而为用户提供更好更方便的地图服务提供了重要的参考。

参考文献

[1]杨慧,杨丹,车耀伟,慈慧,孙亚琴.网络地图API在“地理信息系统设计”教学中的应用 [J].测绘科学,2013.09(5):183-187.

[2]周宇林,付忠.基于Google地图API的空间信息发布[J].计算机应用.2011.31(5):1450-1451.

[3]王卫玲,刘瑜,魏艳梅.基于Google Maps API的电子地图的开发研究[J].信息技术和信息化.2011(3):93-94.

[4]耿庆斋,缪纶,段媛媛,等.基于Google Maps API的地图服务系统及应用[J].中国水利水电科学院学报.2009(3):62-66.

[5]程钢,郭玉祥,贾宝,等.国内主流在线地图API分析及优化对策研究 [J].测绘工程,2013.12(6):4-8.

[6]毛先成,黄秀兰.WebGIS开发方法的研究与实现[J].地理空间信

息.2008.10(6):9-12.

[7]李艳,高扬.基于地图API的Web地图服务及应用研究[J].地理信息世界,2010.04(2):54-57.

[8]杨志波.基于Ajax技术的WEBGIS研究及实现[D].北京:中国科学院研究生院,2006.

[9]胡家赋,晋俊岭,任东宇,郑贵洲.海底地震仪布设导航定位系统的设计与实现 [J].测绘科学,2014.04(4):68-73.

[10]代庆梅.浅析JavaScript MVC框架在 Web开发中的应用 [J].电脑知识与技术,2014.04(10).

本文标签: 地图网络服务功能