文 · Mark
最近由于工作和兴趣使然,接触到了很多移动平台(Android & iOS)地图相关的SDK,但是网上各种资源和问答都有,没有太多对比以及针对性,所以,利用业余时间,对比了目前国内外多个地图相关服务提供商的SDK,供自己学习之用,也希望对大家开发有所帮助。
在开始阅读本内容之前,很多人对路线规划和路线导航概念都很模糊,所以,开始前先厘清两个概念。
- 路线规划(Direction)
路线规划只是提供点到点的路径规划,不提供实时导航功能。
- 路线导航(Navigation)
路线导航分为Turn-by-Turn和Off-the-road两种模式,Turn-by-Turn是实时的路线导航,会在不同拐点(术语:机动点)进行提示,而Off-the-road导航相对要弱一些,只在绘制出规划好的路线的基础上,增加了自身位置的实时展示功能。
对比标准:
- 付费方案
- 多平台支持(Android & iOS)
- 是否提供离线地图
- 路线导航功能是否支持
- 路线规划功能是否支持
- 国际化支持程度
所分析的地图SDK包括:
- 百度地图SDK
- 百度导航SDK
- 百度导航HUD SDK
- 高德地图SDK
- 高德导航SDK
- 腾讯地图SDK
- 360地图SDK
- Scout
- Here
- Mapbox
- Apple MapKit
- GoogleMap
百度地图SDK
- 免费
- 国内地图SDK,国内使用普遍
- 支持路线规划,不支持Turn-by-Turn导航
Pass
- 国际化很难(据悉在扩展海外国际化,时间不可预估)
Pass
- 支持iOS/Android/Web;
- 提供离线地图;
百度导航SDK
- 免费
- 国内地图SDK,国内使用普遍
- 支持路线规划,支持Turn-by-Turn导航,但没有实时导航回调接口
Pass
- 国内使用普遍,国际化很难(据悉在扩展海外国际化,时间不可预估)
Pass
- 支持iOS/Android/Web;
百度导航HUD SDK
- 免费
- 国内地图SDK,国内使用普遍
- 支持路线规划,支持Turn-by-Turn导航,但没有实时导航回调接口
Pass
- 国际化很难(据悉在扩展海外国际化,时间不可预估)
Pass
- 必须依赖 百度导航(非 百度地图)App
Pass
- 支持iOS/Android/Web;
- 目前看,是很鸡肋的产品;
高德地图SDK
- 免费
- 国内地图SDK,国内使用普遍
- 支持路线规划,不支持Turn-by-Turn导航
Pass
- 使用国际化很难
Pass
- 支持iOS/Android/Web;
- 提供离线地图;
高德导航SDK
- 免费
- 国内地图SDK,国内使用普遍
- 支持路线规划,支持Turn-by-Turn导航,但没有实时导航回调接口
Pass
- 使用国际化很难(据悉在扩展海外国际化,时间不可预估)
Pass
- 支持iOS/Android/Web;
腾讯地图SDK
- 不想多说,考虑其他的吧
360地图SDK
- 更不想多说,竟然没有iOS SDK,考虑其他的吧
Scout
- 收费,试用免费,收费计划;
- 提供路线规划,支持Turn-by-Turn导航
很慢,且非毕现不成功
- 使用厂商Strava、Smart等Showcase;
- 支持iOS/Android/Web;
- 提供离线地图;
- 海外产品,国际化支持,skobbler
- 提供路线规划;
- 提供Turn-by-Turn导航功能(但国内不好用);
Pass
- 国内加载速度慢,真的是奇慢!
Here
- 收费,支持试用
- 前Nokia旗下企业
- 提供离线地图
- 提供路线规划功能, 提供Turn-by-Turn导航功能
- 支持Android/iOS/Web
- 国际化支持
- 海外SDK
- 只支持Walking和Driving导航,不提供骑行导航
Mapbox
- 收费,支持试用
- 移动端导航申请页面
- 提供离线地图
- 国际化支持
- 支持Android/iOS/Web等
- 海外SDK
- 提供路线规划,不支持Turn-by-Turn导航功能
Pass
(据悉尚在开发过程中) - 国内加载速度慢,且路线规划非毕现不成功;
- 支持骑行路线规划
- Showcases
Apple MapKit
- 免费
- 不提供离线地图
- 可提供国际化支持
- 支持iOS,不支Android
Pass
- 不提供离线地图
- 提供路线规划,不支持Turn-by-Turn导航功能;
- 国内加载速度快
- 不支持骑行路线规划
GoogleMap
- 一定数量内免费,频繁请求后存在限制
- 国际化支持良好
- Android/iOS SDK不提供路线规划及导航支持,需通过网络请求来获取;
- 稳定
- 不提供离线地图
- 提供路线规划,不支持Turn-by-Turn导航功能;
- 支持骑行路线规划
Q&A相关链接
- getting-routes-and-turn-by-turn-navigation-in-an-iphone-app
- turn-by-turn-navigation-for-our-driver-app
- google-maps-ios-sdk-getting-directions-between-2-locations
Enjoy!
如需交流或有问题,请联系我,Email: chenjian345@gmail.com