通过给定一个经纬度,获取附近的地理位置信息(附近地址)

1.首先初始化地图

     private var aMap: AMap? = nulloverride fun initView() {//初始化地图aMap = mapView.map//初始化定位蓝点val myLocationStyle = MyLocationStyle() //初始化定位蓝点样式类myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_SHOW) //只定位一次myLocationStyle.interval(2000) //设置连续定位模式下的定位间隔,只在连续定位模式下生效,单次定位模式下不会生效。单位为毫秒。myLocationStyle.showMyLocation(true) //控制是否显示定位蓝点aMap?.mapType = AMap.MAP_TYPE_NORMAL // 卫星地图模式aMap?.myLocationStyle = myLocationStyle//设置定位蓝点的StyleaMap?.uiSettings?.isMyLocationButtonEnabled = true //设置默认定位按钮是否显示,非必需设置。aMap?.isMyLocationEnabled = true // 设置为true表示启动显示定位蓝点,false表示隐藏定位蓝点并不进行定位,默认是false。//路线规划监听mRouteSearch = RouteSearch(this)mRouteSearch?.setRouteSearchListener(this)aMap?.setOnMyLocationChangeListener {//定位成功移动相机aMap?.animateCamera(CameraUpdateFactory.newLatLngZoom(LatLng(it.latitude, it.longitude), 15f))}aMap?.setOnMapLoadedListener { addMarkerInScreenCenter() }//移动地图,中心点地理编码查询geoCoderSearch = GeocodeSearch(this)geoCoderSearch?.setOnGeocodeSearchListener(this)//地图选点aMap?.setOnCameraChangeListener(object : AMap.OnCameraChangeListener {override fun onCameraChange(cameraPosition: CameraPosition) {}override fun onCameraChangeFinish(cameraPosition: CameraPosition) {if (!isMoveNearby) {mCenterLatLng = LatLonPoint(cameraPosition.target.latitude, cameraPosition.target.longitude)if (mCenterLatLng != null) {// 第一个参数表示一个LatLng,第二参数表示范围多少米,第三个参数表示是火系坐标系还是GPS原生坐标系val query = RegeocodeQuery(mCenterLatLng, 150f, GeocodeSearch.AMAP)//汽车维修|汽车服务相关|汽车销售|购物相关商务写字楼|住宅小区|培训机构|学校|知名企业|购物中心|综合酒楼|公园|地铁站|银行相关|标志性建筑物|体育休闲服务场所|餐饮相关场所|医疗保健相关
//                        query.poiType = "030000|010000|020000|060000|120201|120302|141400|141200|170100|060101|050101|110101|150500|160200|190600|080000|050000|090000"//开启查询地理编码geoCoderSearch?.getFromLocationAsyn(query)}startJumpAnimation()} else {isMoveNearby = false}}})}

2.查询地理编码回调,回调成功后通过PoiSearch查询附近地址信息

    //地理编码响应override fun onRegeocodeSearched(regeocodeResult: RegeocodeResult, p1: Int) {aMap?.cameraPosition?.zoom?.let {if (it > 18) {//附近地址poi查询val mPoiQuery = PoiSearch.Query("", "", regeocodeResult.regeocodeAddress.cityCode)mPoiQuery.pageSize = 10mPoiQuery.pageNum = 0val poiSearch = PoiSearch(this, mPoiQuery)poiSearch.setOnPoiSearchListener(this)//设置数据返回的监听器 (5)//设置周边搜索的中心点以及区域poiSearch.bound = PoiSearch.SearchBound(regeocodeResult.regeocodeQuery.point, 80, true)poiSearch.searchPOIAsyn()//开始搜索}}start_local.text = regeocodeResult.regeocodeAddress.formatAddressmStartPoint = regeocodeResult.regeocodeQuery.point}

3.周边搜索区域的回调(附近地址列表)

//附近地址poi查询回调
override fun onPoiSearched(result: PoiResult?, code: Int) {if (code == 1000) {result?.let {if (it.pois[0].distance < 30) {//移动到最近的点aMap?.animateCamera(CameraUpdateFactory.newLatLngZoom(LatLng(it.pois[0].latLonPoint.latitude, it.pois[0].latLonPoint.longitude), 19f))isMoveNearby = truestart_local.text = it.pois[0].titlemStartPoint = it.pois[0].latLonPointreturn}}}
}

amap高德地图poi附近地址查询相关推荐

  1. Android MVVM框架搭建(八)高德地图定位、天气查询、BottomSheetDialog

    Android MVVM框架搭建(八)高德地图定位.天气查询.BottomSheetDialog 前言 正文 一.集成SDK 二.基础配置 ① 权限配置 ② 配置Key 三.显示地图 ① MapFra ...

  2. PYTHON爬取高德地图POI

    PYTHON爬取高德地图POI 使用高德地图API爬取POI数据,首先需要申请高德地图API的KEY和获取<POI分类编码表>,本实例的最后结果是根据不同的poi类型分别生成多个EXCEL ...

  3. 高德地图地位获取地址

    高德地图地位获取地址 高德地图开发平台地址:https://lbs.amap.com/ 1导入依赖库 implementation 'com.amap.api:location:4.4.0' 2权限 ...

  4. 实用工具|零代码实现高德地图POI数据下载

    1 工具获取方式 点击下面链接,即可获取地理坐标系转换工具 地理坐标系转换工具 2 工具介绍 高德地图POI数据下载工具(下文称该工具)是一款能够让用户在不写代码的前提下实现高德地图POI数据批量下载 ...

  5. 高德地图地铁公交站点...查询

    高德地图的查询(地铁-) 引入的是高德的搜索插件(AMap.PlaceSearch) 具体使用: (记得注册高德地图的key) , 效果图在最后哦. 引入高德sdk,记得注册key 将sdk放在vue ...

  6. 【数据工具】高德地图POI数据下载工具(支持选择省市以及POI类型)

    1. 工具介绍 今天分享一个能够实现零代码获取高德地图POI数据的工具. 该工具目前支持通过框选地图以及点选省或市的方式输入数据下载范围.另外,支持通过点选的方式选择想要获取的POI类型. 获取方式在 ...

  7. vue项目使用高德地图定位当前地址

    vue项目使用高德地图定位当前地址 一.在项目中安装vue-amap插件 二.页面代码 三.data数据 一.在项目中安装vue-amap插件 1.最终效果 2.安装命令 npm install vu ...

  8. 【数据工具】高德地图POI数据下载工具v1.3(新增输入POI关键词+稳定性提高)

    1. 工具介绍 今天分享一个能够实现零代码获取高德地图POI数据的工具. 该工具当前版本号为v1.3,主要功能特点包括: 支持通过拉框多边形以及点选省或地级市的方式输入POI数据下载范围 支持多选输入 ...

  9. python获取高德地图POI——关键字搜索

    本文主要内容是利用python获取高德地图上的感兴趣点(POIs). 高德开放平台:https://lbs.amap.com/ 下载POI分类编码和城市编码表 搜索POI相关文档:https://lb ...

最新文章

  1. js脚本屏蔽页面点击
  2. signature=c4f11bb5142d9f6ce0876b3cc0d888af,PROVISIONAL SIGNATURE SCHEMES
  3. IOS学习之IOS沙盒(sandbox)机制和文件操作之NSFileManager(三)
  4. java 初始化一个实体对象_Java 对象初始化
  5. java socket 远程调用_SpringBoot使用Netty实现远程调用的示例
  6. 原百万访问量博客http://blog.chinaunix.net/uid/20656672.html不再维护(10年前数百篇oracle/teradata性能优化、故障处理案例)...
  7. oracle多条sql语句常量,如何在Oracle中一次执行多条sql语句
  8. 苏格拉底的“灵魂”的哲学意味
  9. 32岁男子沉迷网游十年离世 临终称真有意思
  10. Tabular Editor学习笔记_3:警告标志及解决办法
  11. foobar2000中文版官方下载【多功能的音频播放器】
  12. UE4 Ultra Dynamic Sky 参数翻译及功能概述
  13. 冲突域和广播域区别,集线器、交换机和路由器对比
  14. 中国企业家:TD-SCDMA的坎坷商业路
  15. 判断手机是否处于静音、震动、正常模式
  16. 元素的alt和title有什么异同?
  17. 忠告360安全卫士督导委员:小心沦为周鸿一的工具(zz)
  18. Qt写的流量监控 and 网络延迟 and 自动隐藏
  19. Android 圆盘颜色选择器,十六进制色值表,百分比透明效果值,渐变效果
  20. 手把手教你五分钟扒个源码写个无敌外挂

热门文章

  1. python2.0 迁移_首次尝试Django(2.0)模型,导致迁移时出现AttributeError
  2. Video Transformer | ViViT: A Video Vision Transformer
  3. linux mv 命令撤销,Linux mv 命令
  4. 学计算机但物理数学不太好,高考志愿指南:这4个专业难学到怀疑人生,数学不好的学生慎选...
  5. 前端JavaScript面试技巧笔记(5)
  6. 计算机操作系统——什么是最早截止时间优先调度算法?什么是最低松弛度有限调度算法?举例说明之~
  7. 【Python爬虫系列教程 31-100】通过scrapy框架、爬取汽车之家宝马5系图片,学习Images管道
  8. android 通话状态监听(自定义接听挂断按钮与通话界面,根据公司的业务逻辑可以实现自己的来电秀功能)...
  9. 《代码随想录》三刷,与诸君共勉,秋招见!
  10. HTML5期末大作业:企业网页设计——摄影店铺5页(代码质量好) 学生DW网页设计作业源码 web课程设计网页规划与设计