朱皮特的博客 自由的飞翔

高德地图使用经验总结

2018-03-28
朱皮特
阅读量:

官网资料

申请高德KEY

控制台中创建应用,配置基本和百度地图类似,不需要审核。

AndroidManifest.xml配置

<!-- 高德地图 -->
<meta-data android:name="com.amap.api.v2.apikey"
    android:value="53eb1d7500fdcb20896efa07b25b1237" />
<service android:name="com.amap.api.location.APSService"></service>

权限配置

参考:入门指南-Android 定位SDK | 高德地图API

<!--用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<!--用于访问GPS定位-->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<!--获取运营商信息,用于支持提供运营商信息相关的接口-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"></uses-permission>
<!--用于访问wifi网络信息,wifi信息会用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"></uses-permission>
<!--这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<!--用于访问网络,网络定位需要上网-->
<uses-permission android:name="android.permission.INTERNET"></uses-permission>
<!--用于读取手机当前的状态-->
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<!--写入扩展存储,向扩展卡写入数据,用于写入缓存定位数据-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
<!--用于申请调用A-GPS模块-->
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission>

引用SDK

在build.gradle的dependencies添加:

//2D地图so及jar
compile 'com.amap.api:map2d:latest.integration'
//定位功能
compile 'com.amap.api:location:latest.integration'
//搜索功能
compile 'com.amap.api:search:latest.integration'

我因为只需要地图选点即可,所以2D地图库就足够了,没有必要引用3D地图库。

混淆配置

参考:开发注意事项-创建工程-开发指南-Android 定位SDK | 高德地图API

#定位
-keep class com.amap.api.location.**{*;}
-keep class com.amap.api.fence.**{*;}
-keep class com.autonavi.aps.amapapi.model.**{*;}

#搜索
-keep   class com.amap.api.services.**{*;}

#2D地图
-keep class com.amap.api.maps2d.**{*;}
-keep class com.amap.api.mapcore2d.**{*;}

上一篇 肠镜体验

Comments

Content