几年前做地图相关项目,使用的百度地图SDK,这次又遇到相关项目,打算尝试下高德地图如何。
1.首先,注册高德账号,然后申请为开发者
http://lbs.amap.com/
2.申请KEY
几年前弄百度地图时,也要申请Key,挺麻烦,然后有时候在实验室弄,有时候在笔记本上弄,需要弄两个Key,然后开发时和发布时都需要个Key,当时弄得老麻烦了。
有了之前的经验,现在申请Key已经轻车熟路了。
主要需要的东西有SHA1码和包名,包名不用多说,
首先是获取发布版安全码
然后首先需要有个签名文件(Key),如果有了,直接使用,如果没有,Android Studio创建Key教程如下:
进入Build->Generate Signed APK,然后选择Create new
首先选择Key文件需要存放的位置,Key store path
然后设置key的密码
之后设置Alias别名,随便来个即可(自己玩时)
然后再设个密码,这个密码和之前相同即可(自己玩时这样,正式开发还是按规矩来)
Validity是签名时限,这个默认即可
然后Certificate中必填其中一项后,即可
点OK,然后属于你自己的Key就生成了。
然后就可以按如下步骤获取发布版安全码了(官方教程http://lbs.amap.com/dev/ticket#/faq/249)
然后调试版安全码可有可无,如果不设的话,需要注意,因为平时直接build出来的apk都是Debug版的,使用默认的Debug Key来进行打包的,所以使用的SHA1不同,为此要么添加Debug Key,要么按网上的一些教程,Android Studio使用正式签名调试
或者按我的方法来,
使用cmd进入到C:\Users\用户名\.android 目录下(android前边有个点,注意)
然后输入 keytool -list -v -keystore debug.keystore
密码直接回车,然后就可以获取调试版的SHA1了
(Android Stuido中带的这个终端也很方便)
然后最麻烦的申请Key就结束了
3.然后下载相关文件
http://lbs.amap.com/api/android-sdk/down/
本次我只用2d地图文件,选择的自定义下载。
解压后只有 AMap_2DMap_V2.9.0_20160525.jar
4.Android Studio配置相关文件
由于没有so文件,直接步骤二
将jar文件直接放到libs文件夹中
然后右键-选择Add As Library然后自动配置成功
5.配置AndroidManifest.xml文件
http://lbs.amap.com/api/android-sdk/guide/mapshow/
在这用到了之前申请的Key了
之后别忘了添加相应权限,按教程来即可
6.创建MapActivity
教程到这开始准备创建一个简单的地图显示Activity了
然后按官方教程里,首先Activity中添加对应代码,这块直接复制即可
然后再对应布局文件中添加地图的显示控件
!!注意,这块有坑!!
然后先是按教程来,然后运行了app,然后崩溃了。。。
报了如下错误
java.lang.NoClassDefFoundError: Failed resolution of: Lcom/amap/api/maps2d/MapView;
找了半天发现文件啥的都导入了也,为啥有问题呢
然后对着下载的官方例子对了好几遍,然后发现,布局文件有问题!!
由于地图升级,2d地图显示的话,应该用
缺了个2d。。。
然后赶快改了,Clean了遍工程重新编译了下
成功!
(官方文档上是3d地图的方法,2d地图需要按此修改)
这也说明我这添加调试key的方法可行,可以放心使用。