最近公司的项目需要在高德地图上做二次开发,作为一个安卓的小菜鸟,之前没有做过这种开发,但是还是硬着头皮把项目做完了,在这记录一下集成高德地图中遇到的一些问题,如果有错误,希望各位大神指正。
一、基础地图展示之前的准备工作
在百度地图创建应用,获取appKey部分就不说了,直接注册,在应用管理的地方创建应用就可以,然后下载高德地图需要的jar文件跟.so文件(这里写的是3D地图的集成),上图:
说明:3D地图才需要添加so库,2D地图无需这一步骤。
为了软件运行的时候,地图可以正常使用,我们将签名文件直接放在app目录下,如图:
然后再主model的gradle中配置
注意:
1、3D地图 SDK 和导航 SDK,5.0.0 版本以后全面支持多平台 so 库(armeabi、armeabi-v7a、arm64-v8a、x86、x86_64),开发者可以根据需要选择。同时还需要注意的是:如果您涉及到新旧版本更替请移除旧版本的 so 库之后替换新版本 so 库到工程中。
2、navi导航SDK 5.0.0以后版本包含了3D地图SDK,所以请不要同时引入 map3d 和 navi SDK。
3、如果build失败提示com.amap.api:XXX:X.X.X 找不到,请确认拼写及版本号是否正确,如果访问不到jcenter可以切换为maven仓库尝试一下。
4、依照上述方法引入 SDK 以后,不需要在libs文件夹下导入对应SDK的 so 和 jar 包,会有冲突。
然后就可以根据说明文档愉快的粘贴了,哈哈!!!
二、基础地图的展示
第一步,配置AndroidManifest.xml
然后,设置高德Key
在application标签中加入如下内容:
第三步,初始化地图容器
MapView 是 AndroidView 类的一个子类, 用于在 Android View 中放置地图。 MapView 是地图容器。用 MapView 加载地图的方法与 Android 提供的其他 View 一样,具体的使用步骤如下:
首先在布局xml文件中添加地图控件:
在项目中使用地图的时候需要注意,需要合理的管理地图生命周期,这非常的重要。
以下示例简述地图生命周期的管理:
第四步,显示地图
AMap 类是地图的控制器类,用来操作地图。它所承载的工作包括:地图图层切换(如卫星图、黑夜地图)、改变地图状态(地图旋转角度、俯仰角、中心点坐标和缩放级别)、添加点标记(Marker)、绘制几何图形(Polyline、Polygon、Circle)、各类事件监听(点击、手势等)等,AMap 是地图 SDK 最重要的核心类,诸多操作都依赖它完成。
在 MapView 对象初始化完毕之后,构造 AMap 对象。示例代码如下:
运行您刚完成的工程就可以在您的 APP 中看到高德地图了。运行后的效果如下图所示:
写到这一个基础的高德地图就可以出现了,有错误欢迎指正。菜鸟第一次在网上发表文章,希望大神勿喷。
网友评论