getPreciseLocation({
return new Promise((resolve, reject) => {
uni.getLocation({
type: 'gcj02',
altitude: false,
accuracy: 'bast',
geocode: true,
highAccuracyExpireTime: '5000',
isHighAccuracy: true,
success: (detail) => {
// this.currentPosition = {longitude: detail.longitude, latitude: detail.latitude}
resolve(detail)
console.log('成功的回调', detail)
},
fail: (err) => {
reject(err)
},
complete: (detail) => {
// uni.hideLoading()
console.log('获取的位置', detail)
}
})
})
})
- 发布:2023-03-16 16:27
- 更新:2023-09-26 14:28
- 阅读:657
【报Bug】IOS端App,集成了高德定位SDK,获取定位,第一次会timed out,errorcode:3,获取的定位相比于安卓有偏差,且不能获取到address,geocode已经设置
产品分类: uniapp/App
PC开发环境操作系统: Windows
PC开发环境操作系统版本号: Windows 10 家庭中文版21H2
HBuilderX类型: 正式
HBuilderX版本号: 3.7.3
手机系统: iOS
手机系统版本号: iOS 14
手机厂商: 苹果
手机机型: iPhone 12
页面类型: vue
vue版本: vue2
打包方式: 云端
项目创建方式: HBuilderX
示例代码:
操作步骤:
iOS获取位置
iOS获取位置
预期结果:
正确的经纬度
正确的经纬度
实际结果:
iOS系统的应用,第一次会报错,且之后获取的经纬度有偏差,没有address信息
iOS系统的应用,第一次会报错,且之后获取的经纬度有偏差,没有address信息
bug描述:
iOS系统的应用
问题一:第一次获取位置会报错
报错信息:
{
"errMsg": "getLocation:fail Position retrieval timed out.",
"errCode": 3,
"code": 3
}
第二次也有可能,第三次能够成功
问题二:iOS获取的定位不准确,且不显示address信息
iOS的经纬度
{
"type": "gcj02",
"altitude": 104.691089630127,
"latitude": 36.66171169704861,
"longitude": 117.150627983941,
"speed": null,
"accuracy": 65,
"errMsg": "getLocation:ok"
}
Android的经纬度
{
"type": "gcj02",
"altitude": 0,
"latitude": 36.661605,
"longitude": 117.150144,
"speed": 0,
"accuracy": 200,
"address": {
"country": "中国",
"province": "山东省",
"city": "济南市",
"district": "历城区",
"street": "******",
"streetNum": "*******",
"poiName": "********",
"cityCode": "0531"
},
"errMsg": "getLocation:ok"
}
英盟
高德sdk定位,打的自定义基座包,appkey配的也没问题,多刷几次能成功,大部分都是定位超时
2023-12-01 11:42