# 地图
# 获取当前地理位置信息(单次定位) v2.1.0
# 使用说明
Android | iOS | PC | 是否需要鉴权 |
---|---|---|---|
支持 | 支持 | 不支持 | 需要 |
// 全量引入调用方式
yy.device.geolocation.get({
targetAccuracy: Number,
coordinate: Number,
withReGeocode: Boolean,
useCache: true, //默认是true,如果需要频繁获取地理位置,请设置false
onSuccess: function (result) {
/* 高德坐标 result 结构
{
longitude : Number,
latitude : Number,
accuracy : Number,
address : String,
province : String,
city : String,
district : String,
road : String,
netType : String,
operatorType : String,
errorMessage : String,
errorCode : Number,
isFromMock : Boolean,
provider : wifi|lbs|gps,
locationDetail: String
}
*/
},
onFail: function (err) {},
});
// 按需加载调用方式,参数与全量引入相同
getGeolocation({...});
# 参数说明
参数 | 参数类型 | 必传 | 说明 |
---|---|---|---|
targetAccuracy | Number | 是 | 期望定位精度半径(单位米),定位结果尽量满足该参数要求,但是不一定能保证小于该误差,开发者需要读取返回结果的 accuracy 字段校验坐标精度;建议按照业务需求设置定位精度,推荐采用 200m,可获得较好的精度和较短的响应时长 |
coordinate | Number | 是 | 1:获取高德坐标; 0:获取标准坐标;推荐使用高德坐标;标准坐标没有 address 字段 |
withReGeocode | Boolean | 是 | 是否需要带有逆地理编码信息;该功能需要网络请求,请根据自己的业务场景使用 |
useCache | Boolean | 是 | 是否缓存地理位置信息。默认是 true。如果 true,客户端会对定位的地理位置信息缓存,在缓存期内 (2 分钟) 再次定位会返回旧的定位 |
locationTimeout | Number | 否 | 定位超时时间(单位秒),默认为 6 秒 |
reGeocodeTimeout | Number | 否 | 逆地理超时时间(单位秒),默认为 3 秒(仅 iOS 支持) |
# 返回说明
参数 | 说明 |
---|---|
longitude | 经度 |
latitude | 纬度 |
accuracy | 实际的定位精度半径 (单位米) |
address | 格式化地址,如:北京市朝阳区南磨房镇北京国家广告产业园区 |
province | 省份,如:北京市 |
city | 城市,直辖市会返回空 |
district | 行政区,如:朝阳区 |
road | 街道,如:西大望路甲 12-2 号楼 |
netType | 当前设备网络类型,如:wifi、3g 等 |
operatorType | 当前设备使用移动运营商,如:CMCC 等 |
errorMessage | 对错误码的描述 |
errorCode | 错误码 |
isFromMock | 仅 Android 支持,定位返回的经纬度是否是模拟的结果 |
provider | 仅 Android 支持,我们使用的是混合定位,具体定位提供者有 wifi/lbs/gps 这三种 |
locationDetail | 仅 Android 支持,高德返回 locationDetail(定位信息描述) |
# 调试
device.geolocation.get
# 展示位置 v2.1.0
# 使用说明
Android | iOS | PC | 是否需要鉴权 |
---|---|---|---|
支持 | 支持 | 不支持 | 需要 |
// 全量引入调用方式
yy.biz.map.view({
latitude: 39.903578,
longitude: 116.473565,
title: "北京国家广告产业园",
scale: 3
});
// 按需加载调用方式,参数与全量引入相同
viewMap({...});
# 参数说明
参数 | 参数类型 | 必传 | 说明 |
---|---|---|---|
latitude | Number | 是 | 需要和 longitude 组合成合法经纬度,高德坐标 |
longitude | Number | 是 | 需要和 latitude 组合成合法经纬度,高德坐标 |
title | String | 否 | 在地图锚点气泡显示的文案 |
scale | Number | 否 | 缩放比例(值为:3-17) |
# 返回说明
无
# 调试
biz.map.view
# 多展示位置 v4.0.4
# 使用说明
Android | iOS | PC | 是否需要鉴权 |
---|---|---|---|
支持 | 支持 | 不支持 | 需要 |
// 全量引入调用方式
yy.biz.map.multipointView({
title: "导航栏显示标题 ",
isShowUserLocation: true,
scale: 3,
locations: [{
latitude: 39.952136,
longitude: 116.3200,
title: "蓝点标题",
radius: 300,
isShowNavigation: true,
isShowPointAnnotation: true
},
{
latitude: 39.952136,
longitude: 116.3400,
title: "红点标题",
radius: 200,
isShowNavigation: true,
isShowPointAnnotation: true
}
]
});
// 按需加载调用方式,参数与全量引入相同
multipointView({...});
# 参数说明
参数 | 参数类型 | 必传 | 说明 |
---|---|---|---|
locations | Array | 是 | 定位点数据 |
latitude | Number | 是 | 需要和 longitude 组合成合法经纬度,高德坐标 |
longitude | Number | 是 | 需要和 latitude 组合成合法经纬度,高德坐标 |
title | String | 否 | 在地图锚点气泡显示的文案 |
radius | Number | 否 | 精度圈半径 为 0 不显示 |
isShowNavigation | Boolean | 否 | 是否显示导航按钮 默认 false |
isShowPointAnnotation | Boolean | 否 | 是否显示定位蓝点 默认 false |
isShowUserLocation | Boolean | 否 | 非必传 是否展示当前用户位置 |
scale | Number | 否 | 缩放比例(值为:3-17) |
# 返回说明
无
# 调试
biz.map.multipointView
# 获取定位服务开关状态 v4.1.3
# 使用说明
Android | iOS | PC | 是否需要鉴权 |
---|---|---|---|
支持 | 不支持 | 不支持 | 不需要 |
// 全量引入调用方式
yy.device.geolocation.getSwitch({
onSuccess: function (result) {
},
onFail: function (err) {},
});
// 按需加载调用方式,参数与全量引入相同
getGeolocationSwitch({...});
# 参数说明
无
# 返回说明
参数 | 说明 |
---|---|
switch | 是否打开,true-打开、false-关闭 |
# 调试
device.geolocation.getSwitch