2024年6月2日发(作者:)
离线地图应用开发
一、需求:
在web开发中可能遇到这样的需求:需要一个地图系统,选择谷歌或百度地图来完成
地图的展示,但是该web系统由于特殊性而不允许与外网链接,还有就是现在对国家对谷
歌网络限制访问导致越来越不稳定,或者由于网络地图接口变更和升级造成接口失效,因
此希望将地图地系统移植到内网中使用。
二、需要的技术点:
可以将map api分为3个部分来看待:
1、负责与服务器交互的js文件(API)
2、地图系统提供的应用,例如地址标注、区域标注、周边搜索等等
3、地图数据
三、解决方法:
地图应用系统主要是第2部分的应用开发,一般地地图应用,例如加载地图、标注,
地图移动等功能,是完全可以将地图移植到内网来处理的。
这种方法也适用于自定义周边搜索,例如需要完成的web功能就是通过查询,获取指
定范围内的建筑物、获取自定的标记(开发本地商户搜索系统的时候,地图上商户数据的
维护肯定是有web自己维护,而并非网络地图提供的数据,这种场景正好适合)。
下来来说如何将map本地化,可以分为两个步骤:
1、 将map使用的与服务器交互的js文件本地化
这个当然是根据map加载时候,所需要的js下载到本地,以后再应用程序开发的时
候,不引用网络站点上的js,而是换成本地的js文件,并予以修改、替换为对本地js的调
用。
2、 将map的地图数据(tiles:瓦片)下载到本地,以及应用的开发
说到地图数据,需要了解map的一点基础知识。把在浏览器中显示的地图,分割成一
块一块的图片,称之为tile,在浏览其中显示地图的部分,从网络地图下载各个tile,然后
拼接在一起,就能够看到完整的一幅地图。
这样通过本地地图接口和地图数据,基本实现和互联网地图API相同的功能(除一些
大数据计算类的复杂应用都是在地图服务器上,无法下载,开发也不太现实)。


发布评论