getLocation() {
return new Promise((resolve, reject) => {
uni.showLoading({title: '正在定位'})
uni.getLocation({
type: 'gcj02',
isHighAccuracy: true,
altitude: false,
geocode: false,
highAccuracyExpireTime: 40000,
success: res => {
uni.hideLoading()
qqMap.reverseGeocoder({
location: res,
success: resp => {
res.address = resp.result.address
resolve(res)
}
})
},
fail: e => {
uni.hideLoading()
if (e.errMsg.indexOf('auth deny') !== -1) {
this.requestAuth()
} else {
uni.showToast({title: '定位失败', icon: 'error'})
}
reject(e)
}
})
})
},
公司内部使用的一个小程序,用户差不多50人。只有这一个司机的这台手机,约一个月反馈一次说定位不准,最远的一次偏移了8公里(当时highAccuracyExpireTime:的值为4000),那次之后改为了40000。今天又反馈说定位不对,反馈说第一次定位的位置为昨天去过的天台洪三工业区,然而他现在的实际位置为温岭市鹭海路(两地相距一百多公里)。然而天台洪三工业区并不是他昨天最后一次定位。数据库存储的经纬度为getLocation返回的经纬度,只有address字段是腾讯地图sdk解析的结果
复现的时候看看第三方导航准确吗?