Android 一步一步教你集成高德地图

前言

当项目中需要使用地图SDK的时候, 是选择高德地图还是百度地图呢?从对开发者友好角度,从容易上手角度:高德完胜百度! 所以我们公司的项目也选择了高德地图。好了!下面就开始高德地图的集成吧!

一、账号与Key的申请

注册成为高德开发者需要分三步:
第一步,注册高德开发者;第二步,去控制台创建应用;第三步,获取Key。
前2步都比较简单,这里说下第三步。

获取Key:
(1)进入控制台,创建一个新应用。如果您之前已经创建过应用,可直接跳过这个步骤。

(2) 在创建的应用上点击”添加新Key”按钮,在弹出的对话框中,依次:输入应用名名称,选择绑定的服务为“Android平台SDK”,输入发布版安全码 SHA1、调试版安全码 SHA1、以及 Package,如下图所示:

获取SHA1见:如何获取 SHA1

二、Android Studio 配置工程

配置工程前需要到官网下载高德SDK 下载地址
注意:这里根据项目需求选择下载,如果不需要导航,定位就用默认的即可。(这样可以大大减小包的体积)如图:

下载后会得到如图所示压缩包

(1)添加 jar 包
将下载的地图 SDK 的 jar包复制到工程的 libs 目录下,如果有老版本 jar 包在其中,请删除。如图所示:

(2)添加 so 库
说明:3D地图才需要添加so库,2D地图无需这一步骤。

在 main 目录下创建文件夹 jniLibs (如果有就不需要创建了),将下载文件的 armeabi 文件夹复制到这个目录下,如果已经有这个目录,将下载的 so 库复制到这个目录即可。如图所示:

(3)在清单文件中配置高德 Key:

<application
         android:icon="@drawable/icon"
         android:label="@string/app_name" >
         <meta-data
            android:name="com.amap.api.v2.apikey"
            android:value="请输入您的用户Key"/>
            ……
</application>

(4)在清单文件中配置权限:

<!--允许程序打开网络套接字-->
<uses-permission android:name="android.permission.INTERNET" />
<!--允许程序设置内置sd卡的写权限-->
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!--允许程序获取网络状态-->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!--允许程序访问WiFi网络信息-->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!--允许程序读写手机状态和身份-->
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<!--用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>
<!--用于访问GPS定位-->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission>
<!--用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"></uses-permission>
<!--用于读取手机当前的状态-->
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
<!--用于申请调用A-GPS模块-->
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission>

三、验证

好了!到这里高德地图集成就全部完成了!接下来验证我们集成的是否正确!
(1)首先在布局xml文件中添加地图控件:

<com.amap.api.maps.MapView    
android:id="@+id/map"    
android:layout_width="match_parent"    
android:layout_height="match_parent">
</com.amap.api.maps.MapView>

(2)在activity的onCreate()方法中添加如下代码就能看到高德地图了!

MapView mapView = (MapView) findViewById(R.id.map);//找到地图控件
//在activity执行onCreate时执行mMapView.onCreate(savedInstanceState),创建地图
mapView.onCreate(savedInstanceState);
AMap aMap = mapView.getMap();//初始化地图控制器对象

大功告成!集成高德地图就是这么简单!
如果对你有帮助点个赞支持下吧!


   转载规则


《Android 一步一步教你集成高德地图》 wildma 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
Glide 中 centerCrop() 与 transform() 共用问题(包括 4.0.0 以上解决方法) Glide 中 centerCrop() 与 transform() 共用问题(包括 4.0.0 以上解决方法)
问题当我们在显示一张图片的时候,想让他等比例缩放到ImageView的大小,又想这张图片实现矩形圆角。 我们一开始会想到这么设置: .transform(new GlideRoundImage(getActivity())) .center
下一篇 
Dagger2 使用——结合 MVP 模式讲解 Dagger2 使用——结合 MVP 模式讲解
更新:根据Dagger2官方最新配置,现在配置已经不需要添加android-apt插件了,所以配置更简单了。即在下文中说的Dagger2配置的第一步与第二步都可以省略了,第三步直接改成以下即可)。 /*dagger2的配置*/
2016-11-27
  目录