安卓开发 高德地图定位的封装 十分钟上手

前言

地图作为开发中三方sdk中较常遇到的一项,集成起来并不麻烦但是不小心踩坑可能会浪费较多时间,如果项目中多处使用还容易造成代码大量冗余,今天我们来将高德地图定位功能集成一个功能化模块,只需两分钟应用到项目中。
GitHub:LocationDemo
友情链接:996icu

正文

以下操作均在子module—amapservice中设置,在主模块只需简单调用即可

1、准备工作

Android Studio 配置工程
官方文档写的已经很详细了在此不再赘述,其实也没必要看,因为我在模块中已经集成好了,当然要是想自己一步一步来需要看下。

2、设置key

为什么单独把这个拎出来?因为这个将是使用过程中最耗时的步骤,并不是多麻烦,是因为这个必须自己来操作,获取key步骤这里有个小问题,就是按照高德获取SHA1 的话并不是那么方便,甚至可能花费半天也很难获取到,因为电脑配置不同,建议使用百度经验推荐的这种AS简单获取SHA1值方法
下面贴上amapservice中AndroidManifest代码

image.png

如图所示,当然为了动态获取权限,可以把这些移到主module中以便安卓6.0以后动态访问权限。

3、自定义地图服务类和调用工具类

代码很简单 直接上


定位服务类

调用工具类

4、调用

调用代码

红线内是调用代码,可以通过aMapLocation获取城市经纬度等一系列定位信息。

注意

此demo未配置安卓6.0以上动态访问权限,安卓6.0以上系统手机试用时请自行前往设置打开定位权限。
完整代码请移步(GitHub)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,170评论 1 32
  • 收到学校,我就生活在一个充满爱的小学,他就是思达外国语。那你充满了爱,当然啦,你是同学们和老师对我的爱,我能让你幸...
    又呆又萌的萌阅读 158评论 0 0
  • 我想变成一只小虫,赤足在柔软的花瓣上 以小小的身体,感受大大的世界 我想透过树叶间的缝隙感受阳光,带着光的炽热,树...
    零水青阅读 256评论 0 0