高德的API文档写得很详细,阅读起来很流畅,在集成的时候大部分问题在文档中都已经有解决方案了,今天写此文章的目的是为了记录一下完整的集成方案,以便于自己下次能跟快速的在进行集成。

1.注册成为开发者(略)

2.获取Key

打开应用管理

Android 高德地图简单的获取定位地址 高德sdk定位_有效时间

创建新应用

Android 高德地图简单的获取定位地址 高德sdk定位_开放平台_02


Android 高德地图简单的获取定位地址 高德sdk定位_android_03

在应用中添加Key

Android 高德地图简单的获取定位地址 高德sdk定位_有效时间_04


Android 高德地图简单的获取定位地址 高德sdk定位_android_05

key名称

按照命名规范取就好了。

服务平台

android

SHA1码

发布版和调试版本注意事项请看这里http://lbs.amap.com/faq/top/hot-questions/249

1.打开AndroidStudio-对项目签名(也可以按照高德的文档自行使用默认的debug签名,只是我自己使用默认debug签名的时候出了问题,就直接重新创建了KeyStrore)。

Android 高德地图简单的获取定位地址 高德sdk定位_开放平台_06

2.创建新的KeyStore

Android 高德地图简单的获取定位地址 高德sdk定位_有效时间_07


3.选择存放KeyStore的位置

Android 高德地图简单的获取定位地址 高德sdk定位_android_08


其它参数的意思:

Key store path下方的Password:KeyStroe的密码

Key:

Ailas:Key的别名

Passwor:Key的密码

Validity:key的有效时间

First and Name:姓名

Organizational Unit:所在公司或者组织的部门

Organization:公司或者组织

City or Locality:城市

State or Province:省

Country Code(XX):国家代码(中国的代码是:CN)

4.创建完成-点击Next

Android 高德地图简单的获取定位地址 高德sdk定位_有效时间_09


5.BuildType选择release,然后点击Finish进行签名

Android 高德地图简单的获取定位地址 高德sdk定位_android_10


6.签名完成后如图所示进入Project Structure中

Android 高德地图简单的获取定位地址 高德sdk定位_有效时间_11


7.选择app-signing-绿色加号,进行添加项目的签名配置

Android 高德地图简单的获取定位地址 高德sdk定位_开放平台_12


8.填写签名配置

注:

Key Alias要与刚才你创建的Key的Alias名称对应,Key Password要与此Key Alias对应。

Store File:Key所在的KeyStore,就是刚刚创建的KeyStore,Store Password就是对应的KeyStore的密码。

Android 高德地图简单的获取定位地址 高德sdk定位_有效时间_13


9.进入BuildType–选择刚刚配置好的”Signing Config” — debug和release都选择的刚刚才的同一个配置,当然你也可以选择不同配置,但是不同配置的话在高德控制台添加Key的那个位置应该体现出来(不同的版本对应不同的SHA1码)。

配置完成:点击OK

Android 高德地图简单的获取定位地址 高德sdk定位_android_14


Android 高德地图简单的获取定位地址 高德sdk定位_开放平台_15


10.设置完成后工程的build.gradle文件就会出现你刚才的“Signing Config”的对应配置。

Android 高德地图简单的获取定位地址 高德sdk定位_有效时间_16


11.通过Terminal控制台获取我们工程刚刚配置好的Key的SHA1值

通过cd命令进入jdk的bin目录下(我的jk使用的是AndroidStudio自带的jdk,在AndroidStudio文件下的\jre\bin目录中),如图所示

Android 高德地图简单的获取定位地址 高德sdk定位_android_17


12.在bin目录下敲入keytool -list -keystore keystore的目录—回车—输入密码—回车,然后接列出了此keystore中所有的key,找到对应别名的key的SHA1值就好了,我们刚才项目的key的别名是key1,那我们这里就应该负责别名为key1的这个SHA1码。

Android 高德地图简单的获取定位地址 高德sdk定位_有效时间_18

PackageName

获取build.gradle文件中的ApplicationId作为PackageName;如果没有设置ApplicationId,请以AndroidManifest.xml配置文件的package 属性为准。

Key申请完成

Android 高德地图简单的获取定位地址 高德sdk定位_android_19

3.开始集成

导入SDK

高德开放平台的文档写得已经很清楚了,就不需要我多嘴了

我选择的是用gradle来管理包,只需要再app的build.gradle的dependencies下加入implementation ‘com.amap.api:location:latest.integration’就OK了。

Android 高德地图简单的获取定位地址 高德sdk定位_android_20


导入SDK需要说明的几个点,一些小型的完全可以避免的坑:

1.在AndroidManifest.xml文件中设置key的时候,name的值不是你PackageName,而是com.amap.api.v2.apikey,可能只是我啥而已,如果有跟我一项傻的你注意避免这个坑哦,还有就是设置key的标签一定要在application标签内。

Android 高德地图简单的获取定位地址 高德sdk定位_有效时间_21


2..Android以上的Dangerous Permissions记得要动态申请,可以参考这篇博客。

使用

使用的话直接按照高德开放平台的文档来就可以了

Android 高德地图简单的获取定位地址 高德sdk定位_android_22

最后,如果大家在集成的过程中有什么问题可以在评论区互相交流。