在网站或者手机应用中,经常用到地图api。在现在这么激烈的竞争下,各地图服务提供的服务基本都趋于一致了。一个公司推出的新服务,其他公司肯定也会很快的跟进。这样,对于开发者来说,地图api的选择就主要参考api的易用程度、地图效果等因素了,在此仅做一汇总比对:

1、google地图:

地图效果截图:

官方地图效果:http://ditu.google.cn/maps

官方api:https://developers.google.com/maps/documentation/javascript/?hl=zh-CN

地图数据源:高德

总结:

作为世界上最好的地图服务提供商(我想没人会反对吧?),虽然在国内遇到了种种不幸,即便如此,在智能手机市场(无论是Android还是iPhone,google地图的使用率是无法比拟的,即便苹果亲自出手,也怎奈确实技术尚未成熟)表现突出。

api文档非常详细,当然对国内的支持总不如国内服务商来的实在。开发者网站也经常出现无法访问的情况(你懂的),vpn或者FQ浏览总不是一件惬意的事情。

潜在问题:根据zf规定,存在地图偏移,官方并没有提供解决办法;zf对谷歌的态度问题,哪天直接完全封杀,地图就可能一片灰了。

2、微软bing地图

地图效果截图:

官方地图效果:http://cn.bing.com/ditu/

官方api:http://www.microsoft.com/maps/

地图数据源:高德

总结:虽然把bing放在第二位,主要也是因为微软的名气大点,但bing地图的国内无论从知名度还是普及率,都远不及其他几家。虽然,个人还挺喜欢bing的地图样式,而且加载速度超快(莫非因为使用的人太少了。。。)。

api对国内开发者的支持不是很好,且bing地图的开发者不多,资源和交流论坛等就相对较少了。

3、百度地图

地图效果截图:

官方地图效果:http://map.baidu.com/

官方api:http://developer.baidu.com/map/

地图数据源:四维图新、CenNavi、道道通

成功案例:http://developer.baidu.com/map/case.htm

总结:api文档和例子都很实用。不过,官方的api v1.3坐标转换接口好像失效了...

国际经纬度坐标标准为WGS-84,国内必须至少使用国测局制定的GCJ-02,对地理位置进行首次加密。百度坐标在此基础上,进行了BD-09二次加密措施,更加保护了个人隐私。百度对外接口的坐标系并不是GPS采集的真实经纬度,需要通过坐标转换接口进行转换。

4、高德地图(MapABC)

地图效果截图:

官方地图效果:http://map.amap.com/

api参考:http://api.amap.com/

使用协议:http://code.autonavi.com/Agreement

数据源:高德

总结:作为国内知名导航和地图服务提供商,包括google在国内也在使用高德的地图数据,数据量上自然相当可观。api的使用基本与google和百度地图一样(功能略少一点,但正常使用的功能都已经具备)。

潜在问题:与google地图一样,地图偏移的问题无法直接解决。

5、soso地图

官方地图效果:http://map.soso.com/

官方api:http://api.map.soso.com/doc/index.html

地图数据源:高德

总结:腾讯这个山寨王也不愿在地图服务上落下。做了个soso地图但是使用的人太少。个人感觉比较鸡肋。

6、图吧地图

地图效果截图:

官方地图效果:http://www.mapbar.com/

官方api:http://open.mapbar.com/

地图数据源:四维图新

总结:不得不说,图吧的手机地图做的还真是出色,这也正是它比那些大公司产品来的更出名的原因吧。即使在web版上,也有人人、58、网易等等也都采用的图吧的地图方案。

api的丰富程度及易用性都还可以,可惜的是没有开发地图偏移的转换接口,GPS坐标到火星坐标的转换需要升级为高级用户api。

7、e都市(都市圈)

地图效果截图:

官方地图效果:http://bj.o.cn/

api参考:http://www.o.cn/mapapi/

地图数据源:都市圈

总结:

(1)地图效果:作为国内较早制作3D地图的服务商(其实算是伪3D,不支持旋转),显示效果还是非常精美的。目前3D支持的城市有限(30个左右),且即使在支持3D的城市中,也主要是在主城区才有3D,其他地区都是一片灰色。

地图加载速度很慢。已经绘制的区域,信息丰富程度还是相当不错的。

(2)api:基本做公司名片和小片区域的活动地图还不错,api功能基本还限于地图显示及相关。

(3)参考文档:没有找到。

(4)参看了网站并联系了客服,个人感觉这个api尚不完善,且主要是走企业定制这条路,可能与一般的使用api不太相同。

8、搜狗地图

地图效果截图:

官方地图效果:http://map.sogou.com/

api参考:http://map.sogou.com/api/

地图数据源:高德+nav2+CenNav

总结:搜狗也做地图,还有api还真是我没想到的。地图效果不错,api文档没有百度地图丰富,不过对于接触过的朋友很快就可以上手了。

[转] 一个程序猿眼中的国内主流地图api的更多相关文章

  1. 专访雷水果国:离1.5K至18K 一个程序猿5每年的成长之路

    我只是一个小菜鸟,对于自主学习和交流PHP(jquery,linux,lamp,shell,javascript,server)等一系列的知识.小菜鸟创建了一个群.希望光临本博客的人能够进来交流. 寻 ...

  2. 连载《一个程序猿的生命周期》-《发展篇》 - 3.农民与软件工程师,农业与IT业

    相关文章:随笔<一个程序猿的生命周期>- 逆潮流而动的“叛逆者”        15年前,依稀记得走出大山,进城求学的场景.尽管一路有父亲的陪伴,但是内心仍然畏惧.当父亲转身离去.准备回到 ...

  3. 连载《一个程序猿的生命周期》- 44.感谢,我从事了IT相关的工作

    感谢博客园一直以来的支持,写连载都是在这里首发,相比较CSDN和开源中国气氛要好的多. 节前,想以此篇文章结束<一个程序猿的生命周期>的<生存>篇,对过10的年做一个了断,准备 ...

  4. 连载《一个程序猿的生命周期》-28、被忽悠来的单身HR(女同志)

    一个程序猿的生命周期 微信平台 口   号:职业交流,职业规划:面对现实,用心去交流.感悟. 公众号:iterlifetime 百木-ITer职业交流奋斗 群:141588103    微   博:h ...

  5. 连载《一个程序猿的生命周期》-6、自学C++,二级考过后,为工作的机会打下了基础

    一个程序猿的生命周期 微信平台 口   号:职业交流,职业规划:面对现实,用心去交流.感悟. 公众号:iterlifetime 百木-ITer职业交流奋斗 群:141588103    微   博:h ...

  6. 蒙特卡洛树搜索算法(UCT): 一个程序猿进化的故事

    前言: 本文是根据的文章Introduction to Monte Carlo Tree Search by Jeff Bradberry所写. Jeff Bradberry还提供了一整套的例子,用p ...

  7. 不变(Invariant), 协变(Covarinat), 逆变(Contravariant) : 一个程序猿进化的故事

    阿袁工作的第1天: 不变(Invariant), 协变(Covarinat), 逆变(Contravariant)的初次约 阿袁,早!开始工作吧. 阿袁在笔记上写下今天工作清单: 实现一个scala类 ...

  8. 连载《一个程序猿的生命周期》-《发展篇》 - 7.是什么阻碍了"程序猿"的发展?

    有两件事想记录一下,具有普遍性和代表性."程序猿"加了引号,是泛指一类人,也并非局限于IT行业.       山东子公司的总经理是公司大股东之一,个子不高.有些秃顶.面容显老,但看 ...

  9. 连载《一个程序猿的生命周期》-《发展篇》- 22.城市奋斗者的阿Q精神

    好久没有写文章了,有些人会认为博主肯定是没有什么好写的了.其实不然,是想写的太多,实在是没有时间.上半年一直比较忙,处于加班常态的状态,身心疲惫.相较于城市的伪奋斗者,我算比较实干的,而界定“实干”的 ...

随机推荐

  1. 信息熵 Information Theory

    信息论(Information Theory)是概率论与数理统计的一个分枝.用于信息处理.信息熵.通信系统.数据传输.率失真理论.密码学.信噪比.数据压缩和相关课题.本文主要罗列一些基于熵的概念及其意 ...

  2. 第三集 欠拟合与过拟合的概念、局部加权回归、logistic回归、感知器算法

    课程大纲 欠拟合的概念(非正式):数据中某些非常明显的模式没有成功的被拟合出来.如图所示,更适合这组数据的应该是而不是一条直线. 过拟合的概念(非正式):算法拟合出的结果仅仅反映了所给的特定数据的特质 ...

  3. linux 下RMAN备份shell脚本

    RMAN备份对于Oracle数据库的备份与恢复简单易用,成本低廉.对于使用非catalog方式而言,将RMAN脚本嵌入到shell脚本,然后再通过crontab来实现中小型数据库数据库备份无疑是首选. ...

  4. c# 修改appConfig文件节点

    配置文件对于程序的帮助是不可小视的,尤其是java工程师们,当然了,我这里说的是c#的配置文件.废话不多说了,直接上代码了,想必大家一看就会明白了 private string UpdateConfi ...

  5. GreenDao官方文档翻译(下)

    第五篇 查询 查询会返回符合某些特定标准的实体.你可以使用原始的SQL定制查询语句,或者更好的方式:使用GreenDao的QueryBuilder API.该查询也支持lazy-loading的结果集 ...

  6. python开发中常见的小坑

    (1)可变参数类型作为函数参数默认值,函数参数默认值的设置在Python中只会被执行一次,也就是定义该函数的时候. 解决办法,设置为None,然后判断 (2)Python中的变量名解析遵循所谓的LEG ...

  7. js闭包用法

    闭包 既保证了 内部函数的私有性 又可以向外公开 通过一个已有对象 向它注入属性 /** * 闭包 * 在函数中定义的函数,在外部使用 * 1.在函数内部定义的函数,在外部不能访问 */ functi ...

  8. C#开源框架(整理)

    http://www.cnblogs.com/chinanetwind/p/3715809.html http://www.cnblogs.com/chinanetwind/p/3715813.htm ...

  9. webstorm+nodejs+JetBrains IDE Support+chrome打造前端开发神器

    #webstorm+nodejs+JetBrains IDE Support+chrome打造前端开发神器 -- 工欲善其事 必先利其器 ##各工具介绍 `webstorm`是**JetBrains* ...

  10. iframe和frame的区别

    在同时有frame和Iframe的一个窗口里frame最大可以做个frameset的儿子,Iframe最大也只能做到frameset的孙子.frame的布局限于几种,Iframe想放哪里放哪里.fra ...