Android第三方框架之学习高德地图SDK—–①集成环境,获取定位信息,地图显示。


  • 本博客系列由本人 半颗心脏 潜心所力创作。

一、集成环境,获取定位基本信息。


1.1 获取官网的key。(注意一个Key只可以对应一台电脑


  • 首先进去高德地图开放平台 高德地图开放平台 官网,注册帐号,新建应用之后,点击该项新建Key,信息如下:

    • ①、key名称 :这个随便填。

    • ②、服务平台 :选择 Android平台 。

    • ③、发布安全码SHA :这个,可参考高德地图推荐的三种方式获取。有必要说明下,如果该 SHA1获取的不是你电脑的,但是又在你电脑运行编译该项目,是无法定位的,注意哈!

    • ④、PackageName: :选择 应用包名,AndroidStudio的包名在gradle.build或AndroidMenfist.xml文件,一般在gradle.build,如图所示 。


1.2 新建工程,配置环境。


  • 第一步 :在 AndroidManifest.xml的Application节点下添加:
     <!--用于进行网络定位--><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>
  • 第二步 :在 AndroidManifest.xml的Application节点下添加 meta-data 和 service,key是在申请成功之后给予的,下面的Key要换掉哈!!!

 <meta-data android:name="com.amap.api.v2.apikey" android:value="d1eab1126a584088c78f50ef030bbcc0"/><service android:name="com.amap.api.location.APSService"/>

  • 第三步 :在app的模块下的build.gradle下添加依赖:

//定位相关compile 'com.amap.api:location:latest.integration'//3D地图显示compile 'com.amap.api:3dmap:latest.integration'

  • 第三步 :声明2个对象:
    //声明AMapLocationClient类对象public AMapLocationClient mLocationClient = null;//定位参数private AMapLocationClientOption mLocationOption = null;

  • 第四步 :在onCreat添加:

        //初始化定位mLocationClient = new AMapLocationClient(getApplicationContext());//设置定位回调监听mLocationClient.setLocationListener(mLocationListener);//初始化定位参数mLocationOption = new AMapLocationClientOption();//设置定位模式为高精度模式,Battery_Saving为低功耗模式,Device_Sensors是仅设备模式mLocationOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy);//设置是否返回地址信息(默认返回地址信息)mLocationOption.setNeedAddress(true);//设置是否只定位一次,默认为falsemLocationOption.setOnceLocation(false);//设置是否强制刷新WIFI,默认为强制刷新mLocationOption.setWifiActiveScan(true);//设置是否允许模拟位置,默认为false,不允许模拟位置mLocationOption.setMockEnable(false);//设置定位间隔,单位毫秒,默认为2000msmLocationOption.setInterval(2000);//给定位客户端对象设置定位参数mLocationClient.setLocationOption(mLocationOption);//启动定位mLocationClient.startLocation();

第五步:定位信息回调:


 //异步获取定位结果public AMapLocationListener mLocationListener = new AMapLocationListener() {@Overridepublic void onLocationChanged(AMapLocation amapLocation) {if (amapLocation != null) {if (amapLocation.getErrorCode() == 0) {//定位成功回调信息,设置相关消息amapLocation.getLocationType();//获取当前定位结果来源,如网络定位结果,详见官方定位类型表amapLocation.getLatitude();//获取纬度amapLocation.getLongitude();//获取经度amapLocation.getAccuracy();//获取精度信息SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");Date date = new Date(amapLocation.getTime());df.format(date);//定位时间amapLocation.getAddress();//地址,如果option中设置isNeedAddress为false,则没有此结果,网络定位结果中会有地址信息,GPS定位不返回地址信息。amapLocation.getCountry();//国家信息amapLocation.getProvince();//省信息amapLocation.getCity();//城市信息amapLocation.getDistrict();//城区信息amapLocation.getStreet();//街道信息amapLocation.getStreetNum();//街道门牌号信息amapLocation.getCityCode();//城市编码amapLocation.getAdCode();//地区编码Log.e("==w", " amapLocation.getStreet():" +  amapLocation.getStreet());Log.e("==w", " 获取经度amapLocation.getLongitude():" + amapLocation.getAddress());// 如果不设置标志位,此时再拖动地图时,它会不断将地图移动到当前的位置}}}};

  • 第六步:看看log:


Android第三方框架之学习高德地图SDK-----①集成环境,获取定位信息,地图显示。相关推荐

  1. Android第三方开发包之高德地图SDK使用介绍

    Android第三方开发包之高德地图SDK使用介绍 前言 准备 Android Studio 配置工程 1,新建一个 Empty Activity 应用项目. 2,添加SDK 3,集成SDK 显示地图 ...

  2. Android第三方开发包值高德地图SDK使用介绍

    (1)配置Project的build.gradle:添加jcenter的仓库地址 文件位置: 代码: allprojects { repositories { jcenter() // 或者 mave ...

  3. Android第三方开发包值高德地图SDK使用介绍,android面试基础

    jcenter() // 或者 mavenCentral() } } (2)配置主工程文件的build.gradle文件 文件位置: 代码: android { defaultConfig { ndk ...

  4. 高德地图--SDK集成--定位功能 地图定位搜索

    最近项目需要到高德定图定位,就此记录下简单集成思路 下载文件之只放了libs和主要代码文件 https://download.csdn.net/download/qq_38355313/1035261 ...

  5. 高德地图 SDK集成 定位 地理编码 搜索 经纬度获取 功能工具类

    最近项目要集成高德地图,然后可以根据语音输入指令,进行定位和地理编码搜索功能,从而实现获取当前位置经纬度和根据地址获取经纬度的功能 下载文件之只放了libs和主要代码文件 https://downlo ...

  6. Unity3D 集成 高德地图SDK 地图

    哈哈如果写的不好见谅,效仿大神记录问题共同进步. 软件版本: Unity:5.4 Android Studio:2.2 高德地图SDK:4.1.2 开始,Android Studio端的不再写了大神文 ...

  7. Android 高德地图so包太大,高德地图sdk配置心得(jar文件与so文件导入)

    最近在项目需要使用地图,学习了一下高德sdk的使用,在配置的过程中遇到了一些问题,记录下来. 遇到的问题 高德地图sdk配置的时候需要导入so文件,由于导入的时候一直没有导入成功,所以一直报No im ...

  8. android 高德地图移动卡顿_Xamarin.Forms Android使用高德地图SDK

    Xamarin.Forms Android 高德演示https://www.zhihu.com/video/1243224001301958656 介绍 本编文章分为2节,第1节是介绍高德地图SDK与 ...

  9. android使用高德地图SDK获取定位信息

    注册账号.创建应用.获取API KEY等这些就不说了,按照官网来就行,我们来讲讲项目的配置及示例代码. 高德地图获取定位信息配置要比百度地图简单多了,这是我比较喜欢的一点,而且之前用百度地图嵌入一个应 ...

  10. android 高德地图SDK报 KEY鉴权失败

    android 高德地图SDK报 KEY鉴权失败. 一般在项目被转移,或项目使用的SDK被其他项目使用时,会发生这种情况! 解决办法 进入高德地图api控制台 点应用管理-我的应用-创建应用 - 根据 ...

最新文章

  1. android jni语法,Android NDK中的JNIEXPORT和JNICALL
  2. linux 杀毒软件 clamav安装使用
  3. 用js控制选择CheckBoxList
  4. java poi 解析excel_Java用POI解析excel并获取所有单元格数据
  5. 基环树一些有趣的事情
  6. SAP UI5 初学者教程之九 - 创建第一个 Component 的试读版
  7. windows10使用VMvare Pro开启虚拟机提示与Device/Credential Guard不兼容
  8. Drawable转换为Bitmap两种方法
  9. source insight 深色主题配置文件
  10. 框架会使程序员变笨吗?
  11. 微型计算机作为载体的部件是,一种基于MCU物理载体的微型计算机系统的制作方法...
  12. 「HDU6583 Typewriter」 - 后缀自动机
  13. 大华电子秤 手动变价方法
  14. Android Netd
  15. MT6573添加新硬件模块驱动方法
  16. 统一社会信用代码及其校验规则
  17. 【Android】PC端同步手机画面
  18. 麒麟v10安装达梦数据库
  19. 静听网+python爬虫+多线程+多进程+构建IP代理池
  20. 记一次修改开源1078音视频服务器兼容粤标音视频的变更

热门文章

  1. 三大框架整合开发的时候,出现红色双箭头,advised by org.springframework.transaction.interceptor.TransactionInterceptor.in
  2. HDFS BALANCER
  3. Cesium--模型(modle)的处理篇
  4. hdu5651xiaoxin juju needs help(大组合数模板)
  5. 计算机基础课件ppt教案,计算机应用基础教案项目二ppt课件.ppt
  6. 将ttc改为otf_Font Renamer字体更名、重命名工具_支持ttf、ttc、otf、pfb字体 V3.0 下载...
  7. iOS 逆向 越狱手机如何安装老版本微信
  8. python求方程最小值_python topk()函数求最大和最小值实例
  9. 由于找不到vcruntime140_1.dll,无法继续执行代码,重新安装程序可能会解决此问题
  10. MySQL本天早上8点到明早8点_早上8点是什么时辰