Android引用SDK包实现高德地图展示

一、准备工作

  • 注册高德地图开放平台


            注册过程我就不多说了,挺简单的,需要登录,然后注册成为开发者,还需要支付宝认证、手机号码验证、邮箱验证挺多的,但是速度很快。基本上随时验证随时注册成功。

  • 新建应用


  • 新建Android项目


    项目建好了我们现在来继续完成搞得地图中的配置。
  • 应用配置


    安全码就是一个签名,我们能够在系统目录-->用户目录-->.android-->debug.keystore

    找到这个以后,我们Win+R打开运行,输入cmd打开终端窗口:

    在终端中输入命令where keytool,查看一下自己的keytool有没有在环境变量中配置好,没有配置的话,先去环境变量中将keytool配置好,这里如何配置我就不讲了,可以自行搜索:

    我们进入到存放debug.krystore的文件夹目录下:

    在命令行中输入keytool -list -v -keystore debug.keystore:

    输入:android,一定要是小写的

    复制SHA1后面的指纹,粘贴到高德控制台

    还剩下PackageName:




    ok,目前我们关于高德这边的已经配置好了,接下来我们去下载SDK包
  • 下载SDK包

      

        下载完成后将其解压,分别复制:


到这儿,我们的准备工作已经全部完成了。


二、配置gradle.build

打开libs文件夹选中jar包---->右键---->Add as Library...

 等待gradle依赖库更新如出现下图表明已经构建成功:


三、编写地图布局

1.编写地图布局


 

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

<Button
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:text="进入地图"
     android:onClick="GotoMap"
     tools:ignore="MissingConstraints" />

2.声明权限

<!--允许程序打开网络套接字-->
    <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>

3.设置高德key


4.设置高德地图SDK隐私合规

注意:这里非常重要,我在这里踩过大坑,按照以往经验是不需要设置这些的,甚至整个开发步骤也并非如此,现在的开发步骤是最新的高德地图官方指导,步骤简化了,但是开发过程涉及用户隐私部分的控制被强调了,因此如果步写这两段代码,在整个项目开发完成以后展现出来的可能是白屏,地图无法显示出来哦  o(O_O)o······

//设置高德地图SDK隐私合规
MapsInitializer.updatePrivacyAgree(this,true);
MapsInitializer.updatePrivacyShow(this,true,true);

5.获取地图控件

private MapView mapView;
private AMap aMap;

//获取地图控件引用
mapView = (MapView) findViewById(R.id.map);
//在activity执行onCreate时执行mMapView.onCreate(savedInstanceState),创建地图
mapView.onCreate(savedInstanceState);

 6.初始化地图控制器

//初始化地图控制器对象
if (aMap == null) {
      aMap = mapView.getMap();
}

@Override
protected void onDestroy() {
     super.onDestroy();
     //在activity执行onDestroy时执行mMapView.onDestroy(),销毁地图
     mapView.onDestroy();
}
@Override
protected void onResume() {
     super.onResume();
     //在activity执行onResume时执行mMapView.onResume (),重新绘制加载地图
     mapView.onResume();
}
@Override
     protected void onPause() {
     super.onPause();
     //在activity执行onPause时执行mMapView.onPause (),暂停地图的绘制
     mapView.onPause();
}
@Override
protected void onSaveInstanceState(Bundle outState) {
     super.onSaveInstanceState(outState);
     //在activity执行onSaveInstanceState时执行mMapView.onSaveInstanceState (outState),保存地图当前的状态
     mapView.onSaveInstanceState(outState);
}

7.显示定位蓝点

MyLocationStyle myLocationStyle;
myLocationStyle = new MyLocationStyle();//初始化定位蓝点样式类myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_LOCATION_ROTATE);//连续定位、且将视角移动到地图中心点,定位点依照设备方向旋转,并且会跟随设备移动。(1秒1次定位)如果不设置myLocationType,默认也会执行此种模式。
myLocationStyle.interval(2000); //设置连续定位模式下的定位间隔,只在连续定位模式下生效,单次定位模式下不会生效。单位为毫秒。
myLocationStyle.showMyLocation(true);//设置是否显示定位小蓝点,用于满足只想使用定位,不想使用定位小蓝点的场景,设置false以后图面上不再有定位蓝点的概念,但是会持续回调位置信息。
aMap.setMyLocationStyle(myLocationStyle);//设置定位蓝点的Style
aMap.getUiSettings().setMyLocationButtonEnabled(true);//设置默认定位按钮是否显示,非必需设置
myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_MAP_ROTATE);//连续定位、且将视角移动到地图中心点,地图依照设备方向旋转,定位点会跟随设备移动。(1秒1次定位)
aMap.setMyLocationEnabled(true);// 设置为true表示启动显示定位蓝点,false表示隐藏定位蓝点并不进行定位,默认是false。

        至此,功成!!!!! 

四、成果展示

  • 22
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,Android集成高德地图SDK的步骤如下: 1. 首先在高德开发者中心注册并创建应用,获取应用的App Key。 2. 在项目的build.gradle文件中添加高德地图SDK的依赖: ``` implementation 'com.amap.api:3dmap:5.5.0' implementation 'com.amap.api:location:5.5.0' ``` 3. 在AndroidManifest.xml文件中添加以下权限: ``` <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/> <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <uses-permission android:name="android.permission.READ_PHONE_STATE"/> <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/> <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/> ``` 4. 在AndroidManifest.xml文件中添加以下配置: ``` <meta-data android:name="com.amap.api.v2.apikey" android:value="你的App Key"/> <meta-data android:name="com.amap.api.v2.associated_package_name" android:value="你的应用名"/> ``` 5. 在布局文件中添加MapView: ``` <com.amap.api.maps.MapView android:id="@+id/mapView" android:layout_width="match_parent" android:layout_height="match_parent"/> ``` 6. 在Activity或Fragment中进行地图初始化和显示: ``` private MapView mMapView; private AMap mAMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_map); mMapView = findViewById(R.id.mapView); mMapView.onCreate(savedInstanceState); mAMap = mMapView.getMap(); } @Override protected void onResume() { super.onResume(); mMapView.onResume(); } @Override protected void onPause() { super.onPause(); mMapView.onPause(); } @Override protected void onDestroy() { super.onDestroy(); mMapView.onDestroy(); } ``` 以上就是Android集成高德地图SDK的基本步骤。需要注意的是,如果需要使用定位功能,还需要进行相应的配置和调用。详细的内容可以查看高德官方文档。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值