定位
更新时间:2021年03月07日
简介
JavaScript API提供在Web端获取当前位置信息的方法,融合了浏览器定位、IP定位、安卓定位SDK辅助定位等多种手段,提供了获取当前准确位置、获取当前城市信息等功能。
浏览器定位精度和性能依赖浏览器自身特性,IP定位的精度值为城市级别。
对于安卓WebView页面的开发者,可以结合定位SDK进行辅助定位,使用方法参见定位SDK相关章节。
注意:
1.请求JavaScript API v3.0的定位功能时,必须获取用户授权。
2.由于Chrome、iOS10等已不再支持非安全域的浏览器定位请求,为保证定位成功率和精度,请尽快升级您的站点到HTTPS。
提供的定位服务
Geocoder:逆/地址解析,用于坐标与地址间的相互转换。
详情见类参考
逆地址解析服务
根据坐标点获得该地点的地址描述,是地址解析的逆向转换。 您可以通过Geocoder.getLocation()方法获得地址描述。当解析工作完成后,您提供的回调函数将会被触发。如果解析成功,则回调函数的参数为GeocoderResult对象,否则为null。
1指定经纬度获取地址
var map = new BMapGL.Map("container"); map.centerAndZoom(new BMapGL.Point(116.404, 39.915), 11); // 创建地理编码实例 var myGeo = new BMapGL.Geocoder(); // 根据坐标得到地址描述 myGeo.getLocation(new BMapGL.Point(116.364, 39.993), function(result){ if (result){ alert(result.address); } });
2鼠标点击地图获取地址
var map = new BMapGL.Map('container'); map.centerAndZoom(new BMapGL.Point(116.331398,39.897445), 13); var geoc = new BMapGL.Geocoder(); map.addEventListener('click', function(e){ var pt = e.latlng; geoc.getLocation(pt, function(rs){ var addComp = rs.addressComponents; alert(addComp.province + ", " + addComp.city + ", " + addComp.district + ", " + addComp.street + ", " + addComp.streetNumber); }) })