高德地图设置定位模式怎样设置停车定位

描述:高德地图是一款中国专业的手机地图,拥有全面精准的地点信息和导航系统,安软市场高德地图专题将为大家提供了高德地图安卓版、ios版、电脑版下载,还有高德地图最新教程、使用方法等相关内容,一起来看看吧。
手机扫描下载
手机扫描下载
手机客户端
微信公众号小程序使用高德地图实现定位小程序使用高德地图实现定位木南瓜百家号序言:本教程教你利用高德地图结合小程序获取定位信息(不要问我为什么不用百度,怕返回信息带广告)先看效果1.注册高德地图开发者(http://lbs.amap.com/)2.获取Key进入控制台,创建一个新应用。如果您之前已经创建过应用,可直接跳过这个步骤。3.创建小程序项目,一定要输入小程序APPID4.下载并把小程序SDK放到小程序项目中下载地址:http://lbs.amap.com/api/wx/download解压后得到 amap-wx.js 文件,在创建的项目中,新建一个名为 libs 目录,将 amap-wx.js 文件拷贝到 libs 的本地目录下5.设置安全通讯域名登录微信公众平台,在 &设置&-&&开发设置& 中设置 request 合法域名,将 https://restapi.amap.com 中添加进去,如下图所示:6.退出微信开发者工具(重新登录)7.代码实现定位信息获取1.代码结构为:2.在 index.js 中引入 amap-wx.js 文件var amapFile = require('../../libs/amap-wx.js');3.index.js 全部代码var app = getApp();var markersData ={latitude: '',//纬度longitude: '',//经度key:&baea1e5db9dd855e7cd083bf&//你申请的高德地图key};Page({data: {adcode:&&,formatted_address:&&},onLoad: function() {var that =//用微信小程序的api接口获取经度,维度wx.getLocation({type: 'wgs84',success: function(res) {markersData.latitude= res.latitude,markersData.longitude=res.longitudethat.map();}})//用经度和维度获取地理信息,返回数据中data里面有包含很多信息很多信息,本文只显示行政区域代码以及地址信息。//返回结果字段说明:http://lbs.amap.com/api/webservice/guide/api/georegeo/#regeomap:function(){var myAmapFun = new amapFile.AMapWX({key:markersData.key});myAmapFun.getRegeo({location:''+markersData.longitude+','+markersData.latitude+'',//location的格式为'经度,纬度'success: function(data){//成功回调that.setData({adcode: data[0].regeocodeData.addressComponent.adcode,formatted_address:data[0].regeocodeData.formatted_address});fail: function(info){//失败回调console.log(info)8.index.wxml结构{{adcode}}{{formatted_address}}9.运行详细教程:http://lbs.amap.com/api/wx/gettingstarted本文仅代表作者观点,不代表百度立场。系作者授权百家号发表,未经许可不得转载。木南瓜百家号最近更新:简介:硬件和软件,移动数字…让我们分享。作者最新文章相关文章高德地图-定位SDK使用 - 简书
高德地图-定位SDK使用
在高德地图定位SDK的使用过程中,记录下些细节处理。方便以后整理。
此文是整理在能够显示高德地图的前提下的。
1. 配置AndroidManifest文件
在application标签中声明service组件,每个app拥有自己单独的定位service。
&service android:name="com.amap.api.location.APSService"&&/service&
2. 启动定位服务
2.1 初始化定位客户端,设置监听
//定位服务类。此类提供单次定位、持续定位、地理围栏、最后位置相关功能
private AMapLocationClient aMapLocationC
//声明定位回调监听器
private OnLocationChangedL
//初始化定位
aMapLocationClient = new AMapLocationClient(getApplicationContext());
//设置定位回调监听
aMapLocationClient.setLocationListener(this);
2.2 配置定位参数,启动定位
//定位参数设置
private AMapLocationClientOption aMapLocationClientO
//初始化定位参数
aMapLocationClientOption = new AMapLocationClientOption();
//设置定位模式为高精度模式,Battery_Saving为低功耗模式,Device_Sensors是仅设备模式
aMapLocationClientOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy);
//设置是否返回地址信息(默认返回地址信息)
aMapLocationClientOption.setNeedAddress(true);
//设置是否只定位一次,默认为false
aMapLocationClientOption.setOnceLocation(false);
//设置是否强制刷新WIFI,默认为强制刷新
aMapLocationClientOption.setWifiActiveScan(true);
//设置是否允许模拟位置,默认为false,不允许模拟位置
aMapLocationClientOption.setMockEnable(false);
//设置定位间隔,单位毫秒,默认为2000ms
aMapLocationClientOption.setInterval(2000);
//给定位客户端对象设置定位参数
aMapLocationClient.setLocationOption(aMapLocationClientOption);
//启动定位
aMapLocationClient.startLocation();
3. 添加定位接口
4. 添加监听
// 设置定位监听
aMap.setLocationSource(this);
//设置默认定位按钮是否显示
aMap.getUiSettings().setMyLocationButtonEnabled(true);
// 设置为true表示显示定位层并可触发定位,false表示隐藏定位层并不可触发定位,默认是false
aMap.setMyLocationEnabled(true);
// 设置定位的类型为定位模式,参见类AMap。
aMap.setMyLocationType(AMap.LOCATION_TYPE_LOCATE);
// 设置为true表示系统定位按钮显示并响应点击,false表示隐藏,默认是false
aMap.setMyLocationEnabled(true);
其中locationSource接口是一个提供位置数据的接口。实现该接口需复写其中的方法activate,该方法的具体解释如下:
activate方法解释
在此方法中激活定位回调监听器listener。否则接收不到定位。
public void activate(OnLocationChangedListener onLocationChangedListener) {
listener = onLocationChangedL
5. 获取定位结果
复写定位回调接口AMapLocationListener中的方法,获取定位后的结果。
* 定位回调监听,当定位完成后调用此方法
* @param aMapLocation
public void onLocationChanged(AMapLocation aMapLocation) {
if(listener!=null && aMapLocation!=null) {
listener.onLocationChanged(aMapLocation);// 显示系统小蓝点
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,则没有此结果
aMapLocation.getCountry();//国家信息
aMapLocation.getProvince();//省信息
aMapLocation.getCity();//城市信息
aMapLocation.getDistrict();//城区信息
aMapLocation.getRoad();//街道信息
aMapLocation.getCityCode();//城市编码
aMapLocation.getAdCode();//地区编码
//显示错误信息ErrCode是错误码,errInfo是错误信息,详见错误码表。
Log.e("Tomato","location Error, ErrCode:"
+ aMapLocation.getErrorCode() + ", errInfo:"
+ aMapLocation.getErrorInfo());
其中错误码为0的情况定位正常。
6. 停止定位
protected void onDestroy() {
super.onDestroy();
mapView.onDestroy();
//销毁定位客户端
if(aMapLocationClient!=null){
aMapLocationClient.onDestroy();
aMapLocationClient =
aMapLocationClientOption =
package com.tomato.
import android.graphics.C
import android.os.B
import android.support.v7.app.AppCompatA
import android.support.v7.widget.T
import android.util.L
import android.widget.CompoundB
import com.amap.api.location.AMapL
import com.amap.api.location.AMapLocationC
import com.amap.api.location.AMapLocationClientO
import com.amap.api.location.AMapLocationL
import com.amap.api.maps.AM
import com.amap.api.maps.LocationS
import com.amap.api.maps.MapV
import com.amap.api.maps.model.BitmapDescriptorF
import com.amap.api.maps.model.MyLocationS
import java.text.SimpleDateF
import java.util.D
public class MainActivity extends AppCompatActivity implements CompoundButton.OnCheckedChangeListener
,AMapLocationListener,LocationSource {
private MapView mapV
private AMap aM
//定位服务类。此类提供单次定位、持续定位、地理围栏、最后位置相关功能
private AMapLocationClient aMapLocationC
private OnLocationChangedL
//定位参数设置
private AMapLocationClientOption aMapLocationClientO
protected void onCreate (Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
mapView = (MapView)findViewById(R.id.map);
mapView.onCreate(savedInstanceState);
aMap = mapView.getMap();
//设置地图类型
aMap.setMapType(AMap.MAP_TYPE_NORMAL);
MyLocationStyle locationStyle = new MyLocationStyle();
locationStyle.myLocationIcon(BitmapDescriptorFactory.fromResource(R.drawable.start));
locationStyle.strokeColor(Color.BLUE);
locationStyle.strokeWidth(5);
aMap.setMyLocationStyle(locationStyle);
// 设置定位监听
aMap.setLocationSource(this);
aMap.getUiSettings().setMyLocationButtonEnabled(true);//设置默认定位按钮是否显示
aMap.setMyLocationEnabled(true);// 设置为true表示显示定位层并可触发定位,false表示隐藏定位层并不可触发定位,默认是false
// 设置定位的类型为定位模式,参见类AMap。
aMap.setMyLocationType(AMap.LOCATION_TYPE_LOCATE);
// 设置为true表示系统定位按钮显示并响应点击,false表示隐藏,默认是false
aMap.setMyLocationEnabled(true);
aMapLocationClient = new AMapLocationClient(getApplicationContext());
aMapLocationClient.setLocationListener(this);
//初始化定位参数
aMapLocationClientOption = new AMapLocationClientOption();
//设置定位模式为高精度模式,Battery_Saving为低功耗模式,Device_Sensors是仅设备模式
aMapLocationClientOption.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy);
//设置是否返回地址信息(默认返回地址信息)
aMapLocationClientOption.setNeedAddress(true);
//设置是否只定位一次,默认为false
aMapLocationClientOption.setOnceLocation(false);
//设置是否强制刷新WIFI,默认为强制刷新
aMapLocationClientOption.setWifiActiveScan(true);
//设置是否允许模拟位置,默认为false,不允许模拟位置
aMapLocationClientOption.setMockEnable(false);
//设置定位间隔,单位毫秒,默认为2000ms
aMapLocationClientOption.setInterval(2000);
//给定位客户端对象设置定位参数
aMapLocationClient.setLocationOption(aMapLocationClientOption);
//启动定位
aMapLocationClient.startLocation();
* 定位回调监听,当定位完成后调用此方法
* @param aMapLocation
public void onLocationChanged(AMapLocation aMapLocation) {
if(listener!=null && aMapLocation!=null) {
listener.onLocationChanged(aMapLocation);// 显示系统小蓝点
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,则没有此结果
aMapLocation.getCountry();//国家信息
aMapLocation.getProvince();//省信息
aMapLocation.getCity();//城市信息
aMapLocation.getDistrict();//城区信息
aMapLocation.getRoad();//街道信息
aMapLocation.getCityCode();//城市编码
aMapLocation.getAdCode();//地区编码
//显示错误信息ErrCode是错误码,errInfo是错误信息,详见错误码表。
Log.e("Tomato","location Error, ErrCode:"
+ aMapLocation.getErrorCode() + ", errInfo:"
+ aMapLocation.getErrorInfo());
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
public void activate(OnLocationChangedListener onLocationChangedListener) {
listener = onLocationChangedL
public void deactivate() {
* 方法必须重写
protected void onResume() {
super.onResume();
mapView.onResume();
* 方法必须重写
protected void onPause() {
super.onPause();
mapView.onPause();
* 方法必须重写
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
mapView.onSaveInstanceState(outState);
* 方法必须重写
protected void onDestroy() {
super.onDestroy();
mapView.onDestroy();
//销毁定位客户端
if(aMapLocationClient!=null){
aMapLocationClient.onDestroy();
aMapLocationClient =
aMapLocationClientOption =
对AndroidMainfest.xml配置
&?xml version="1.0" encoding="utf-8"?&
&manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.tomato.lbsdemo" &
&!--地图包、搜索包需要的基础权限--&
&uses-permission android:name="android.permission.INTERNET" /&
&uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /&
&uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/&
&uses-permission android:name="android.permission.ACCESS_WIFI_STATE"
&uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"
&uses-permission android:name="android.permission.READ_PHONE_STATE" /&
&permission android:name="android.permission.WRITE_APN_SETTINGS" /&
&!--定位包、导航包需要的额外权限(注:基础权限也需要)--&
&uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /&
&uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" /&
&!--&uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION" /&--&
&uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /&
android:minSdkVersion="15"
android:targetSdkVersion="23" /&
&application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" &
&meta-data
android:name="com.amap.api.v2.apikey"
android:value="LBS上申请的Key"&
&/meta-data&
&service android:name="com.amap.api.location.APSService"&&/service&
android:name=".MainActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar" &
&intent-filter&
&action android:name="android.intent.action.MAIN" /&
&category android:name="android.intent.category.LAUNCHER" /&
&/intent-filter&
&/activity&
&/application&
&/manifest&
8. 自定义定位图标
使用定位(当前位置)的绘制样式类MyLocationStyle,对定位图标进行自定义。
MyLocationStyle locationStyle = new MyLocationStyle();
locationStyle.myLocationIcon(BitmapDescriptorFactory.fromResource(R.drawable.start));
locationStyle.strokeColor(Color.BLUE);
locationStyle.strokeWidth(5);
aMap.setMyLocationStyle(locationStyle);
Android 工程师一枚
Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调导致了样板模式, 使用Spring Cloud开发人员可以快速地支持实现这些模式的服务和应用程序。他们将在任何分布式...
用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你能获得这些料: 知道setContentView()之后发生了什么? ... Android 获取 View 宽高的常用正确方式,避免为零 - 掘金 相信有很多...
用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金Cover 有什么料? 从这篇文章中你能获得这些料: 知道setContentView()之后发生了什么? ... Android 获取 View 宽高的常用正确方式,避免为零 - 掘金相信有很多朋友...
发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注
09:45字数 61697阅读 3316评论 2喜欢 85 用到的组件 1、通过CocoaPods安装 项目名称 项目信息 AFNetworking 网络请求组件 FM...
用到的组件1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SDWebImage多个缩略图缓存组件 UICKeyChainStore存放用户账号密码组件 Reachability监测网络状态 DateTools友好...
需要导入第三方Security,使用时导入头文件#import &NSString+Hash.h& md5 (信息-摘要算法) .散列运算. ------& 生成固定的字符串.算法是公开的.
------- 过程是不可逆的.任何不同的两个文件,生成的结果是不同的,字符串的...
(一幅山水画)小件把中玩,玩出新天地。纹理渐清晰,显山又露水。太湖独钓钩,锦江芳草萋。半山林翠绿,一幅山水画。
不记得爬的是哪座山,我的心只留给眼睛
周末硅谷教父开公司拍视频,这之前要准备一系列课程,包含12节课。这个外国人也许是行程太满,也许是没有开课的经验,便让我们给出课程标题。想必这是因为水平过高,可以做到任何话题都可以信手拈来。 老大对接后,便把想标题的事情交给我来完成。我知道现在题目在一篇文章中所占比重越来越重...
今天下午,和小轩出去捡木棉花。 看着他欢快的跑来跑去,一会功夫,双手捧着满满地木棉花回来了。家里阳台已经晒了很多,明天天气又不好,要下雨。担心再拿回家,也晒不干。 “小轩,要不我们去菜市场卖木棉花吧。” “好啊好啊” 我们来到菜市场,下午时间,空出很多摊位。找了一个摊位,开...高德地图的 目的地推荐停车场怎么用?_高德地图吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:12,384贴子:
高德地图的 目的地推荐停车场怎么用?收藏
我设定一个目的地 旁边有很多停车场, 但我没发现地图推荐给我啊.
高达竞技网游「机动战士敢达OL」日服同步版本逆袭的夏亚今日上线沙扎比,ν敢达全球首发,赶紧登陆游戏获取专属机体吧!
地图不是应该把停车场标注出来让我选择吗?可是没有啊. 求解啊.
楼主好,点击更多-设置-导航设置-目的地推荐停车场 打开,到目的地后就会推荐停车场了(家、公司、加油站是不会推荐停车场的哦)
同问,新版的高德找不到停车场推荐功能了
登录百度帐号推荐应用

我要回帖

更多关于 高德地图设置定位半径 的文章

 

随机推荐