AI 地图
产品服务
解决方案
文档与支持
定价
更新时间: 2026/08/19 09:53

定位 UTS 插件通过 BMapLocationClient 提供统一的三端定位接口。定位成功和失败都会进入 onReceiveLocation 回调,请始终先检查 locStatusType。

BMapLocationClient 静态方法
  • setAgreePrivacy(isAgreePrivacy: boolean): void:设置用户是否同意百度定位 SDK 隐私政策,必须在使用其他 SDK 能力前调用。

  • checkAuthKey(key: string): Promise<string>:设置平台 AK 并触发鉴权。AK 必须与平台、应用包名或 Bundle Identifier、签名信息匹配。

BMapLocationClient 实例方法
  • setLocOption(option: LocationClientOption): void:设置定位参数,建议在开始定位前调用。

  • setLocationListener(listener: LocationListener): void:设置定位监听器;再次设置会替换当前监听器。

  • requestSingleLocation(): void:发起单次定位。

  • requestLocationUpdates(): void:开始连续定位。

  • stopRequestLocationUpdates(): void:停止连续定位。

  • isStarted(): Promise<boolean>:查询定位服务是否已启动。

  • enableLocInBackground(): Promise<boolean>:开启后台定位能力,但不会代替 requestLocationUpdates() 启动连续定位。

  • disableLocInBackground(): void:关闭后台定位能力。

  • isStartLocInBackground(): boolean:查询后台定位状态。

  • getVersion(): string:获取底层定位 SDK 版本。

  • destroy(): void:停止定位、关闭后台能力并注销监听。

LocationClientOption
type LocationClientOption = {
coordType?: 'gcj02' | 'bd09' | 'bd09ll'
timeInterval?: number
distanceInterval?: number
isNeedAddress?: boolean
locationMode?: 0 | 1 | 2
singleLocatingTimeout?: number
}
  • coordType:结果坐标系,默认 bd09ll。

  • timeInterval:连续定位时间间隔,单位为秒,默认 3。iOS 当前实现不使用该字段。

  • distanceInterval:连续定位最小位移,单位为米,默认 0。

  • isNeedAddress:是否返回地址、位置描述和 POI 等信息,默认 false。

  • locationMode:0 为高精度,1 为仅设备,2 为低功耗,默认 0。

  • singleLocatingTimeout:单次定位超时,单位为秒,默认 3。Android 当前实现不使用该字段。

Location 定位结果

Location 包含 longitude、latitude、coordType、radius、altitude、speed、direction、time、poiList、locStatusType、locStatusTypeDescription、addr、hasAddr、locationDescribe、locationId 和 poiRegion。radius 与 altitude 的单位为米,speed 的单位为米/秒,direction 的单位为度。

LocationStatusType
  • 0:未知错误;1:定位成功;2:无定位权限。

  • 3:AK 鉴权失败;4:定位失败;5:网络异常。

地址和 POI

Address 包含国家、省、市、区县、乡镇、街道、门牌号、完整地址、行政区划代码等字段。Poi 包含 id、rank、name、tags、addr。PoiRegion 包含 directionDesc、name、tags、uid、bid。只有在 isNeedAddress 为 true 且底层服务返回数据时,这些字段才可用。

权限和日志接口
  • checkPermission(): Promise<Permission>:获取或请求权限,具体行为因平台而异。

  • guideSettingPermission():发起授权或引导用户进入系统设置。

  • setPrintLogStatus(status: boolean): void:设置是否输出插件内部日志。

  • getPrintLogStatus(): boolean:获取插件内部日志开关状态。

上一篇

集成定位UTS插件

下一篇

开发注意事项
本篇文章对您是否有帮助?