Geolocation

返回用户当前的位置,会首先调用浏览器自带的定位接口,如果失败或不支持则调用高精IP定位(需要开通权限,否则调用普通定位)接口,如果用户拒绝授权定位,则无法返回任何定位结果。

构造函数

方法

  • 关闭SDK辅助定位

    返回值 void

  • 开启SDK辅助定位,仅当使用环境为移动web混合开发,且开启了定位sdk辅助定位功能后生效

    返回值 void

  • 返回用户当前位置。定位完成时(包括成功、失败、超时等情况),回调参数为GeolocationResult对象,否则为null

    参数类型说明
    callbackFunction
    optsPositionOptions
    属性类型说明
    enableHighAccuracyboolean是否要求浏览器获取最佳效果,同浏览器定位接口参数。默认为false
    maximumAgenumber允许返回指定事件内的缓存结果,单位为毫秒。如果为0,则每次请求都获取最新的定位结果。默认为10分钟
    SDKLocationboolean是否开启SDK辅助定位
    timeoutnumber超时事件,单位为毫秒。默认为10秒

    返回值 void

    示例代码1

    const geolocation = new BMap.Geolocation();
    geolocation.getCurrentPosition((result) => {
    if (geolocation.getStatus() === 0) {
    map.panTo(result.point);
    }
    }, { enableHighAccuracy: true });
  • 定位完成后的状态码。分为BMAP_STATUS_SUCCESS,BMAP_STATUS_UNKNOWN_LOCATION,BMAP_STATUS_PERMISSION_DENIED,BMAP_STATUS_TIMEOUT

    返回值 ServiceStatus