一直以来感觉地图功能的开发是个难点,我通常做法都是Copy之前的项目中的地图功能,根据UI需要改一下。如果有其他的需求再去百度一下,这也无可厚非。平时项目对地图的使用就是定位,poi搜索啊这些功能,一般不会涉及其他功能。但最近公司有一个项目,涉及到地图上添加假覆盖物,说以这就难道了我,查阅多资料结果都不是很理想没办法你能去看开发平台的Api文档,再两天的探索下降百度地图和高德地图的,Marker覆盖物 Polyline(折线) Polygon(多边形) Circle(圆形)的使用有了一定的了解,一下对这些覆盖物的实际使用做一下描述,一些仅为 个人项目实际运用后的总结不一定 准确
- Marker覆盖物:主要做位置的标注,如共享单车软件中车子的位置就是通过Marker覆盖物做的
- Polyline(折线):主要再地图上话轨迹,例如通过共享单车的行车记录我们看到某一次行程的轨迹
- Polygon(多边形),Circle(圆形):这两个个一般做电子围栏划定和位置判断使用的
准备工作:
百度、高德地图应用平台账号申请,应用创建这些大家都清楚就不详细介绍了,关于SHA1的获取高德地图开发者平台查看
高德地图:需要使用2D地图和定位模块,高德地图可以直接使用 依赖,这比较好,也是现在开发平台通用的方式,集成方便
百度:需要根据用户需要下线集成包,使用的功能也是地图基础包和定位模块
开始集成
为了详细先介绍一下地图的基本配置和定位功能
1.高德地图
引入依赖:
implementation 'com.amap.api:map2d:5.2.0'
implementation 'com.amap.api:location:4.2.0' //根据用户需要考虑是否需要定位功能
清单文件配置:
权限:
<!-- 用于进行网络定位 -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<!-- 用于访问GPS定位 -->
<use