早在2009年,我就在MediaWiki中通过Google Maps API调用谷歌地图,但后来随着Google退出中国大陆,Google地图服务也不好使用了,直到今年6月前后基本上无法使用了,搞得嵌入Google Maps API代码的网站打开时延时非常严重,甚至无法打开,我们被迫将放在国内服务器上的中文网站中的谷歌地图代码全部删除,在国外服务器上放置的外文网站不受影响。
以前也知道国内有百度等地图可以提供类似Google的调用服务,但一直没有尝试。前几天去摸索了一下,其实很类似Google的API,稍微看一看、改一改、试一试就可以成功调用百度地图API了,参考资料:
- 百度开放云
- 百度LBS开放平台
- Javascript API大众版:适合桌面版和手机版
- Javascript API极速版:专为手机版打造
使用的时候,首先也需要先去申请密钥,然后在页面中嵌入相关代码,例子:
电脑版:安徽省六安市霍邱县新窑村委会(调用Javascript API大众版)网址已经失效手机版:北京市门头沟区小龙门森林公园(调用Javascript API极速版)网址已经失效
和以前调用Google Maps API一样,我们只需要很简单的几种地图功能:
- 调用电脑版或者手机版地图
- 用经纬度定位、比例尺可设定
- 用地址进行查询匹配
- 有平移、缩放控件
- 有卫星、地图等切换
百度和谷歌都还有很多更复杂的地图功能,我们暂时用不到。
调试也很简单,与Google Maps API的类似,所以遇到问题我也是参考以前调用谷歌地图的办法,例如以前写的博文《使用新版谷歌地图Google Maps JavaScript API V3遇到的几个问题》也有参考作用。
2014-9-15补充2个用地址来匹配的地图例子:
- 电脑版:三门县亭旁工业园区/台州(调用Javascript API大众版)
- 手机版:辽宁省东港市孤山镇中大街236号/丹东市(调用Javascript API极速版)
2019年3月14日发现API调用里面city可以不填写了,只填一个包含省市区的address就可以,以前是必须要填写一个city和一个详细街道级address。
评论