2***@qq.com
2***@qq.com
  • 发布:2024-10-14 11:16
  • 更新:2024-10-14 17:54
  • 阅读:58

【报Bug】uni.getLocation的成功回调,经纬度为5E-324,address为空。

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: 10

HBuilderX类型: 正式

HBuilderX版本号: 4.24

手机系统: Android

手机系统版本号: Android 10

手机厂商: 华为

手机机型: MRD-TL00

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

getLocation() {
let _this = this
uni.showLoading({
title: '位置获取中',
mask: true
});
_this.isLoading = true
uni.getLocation({
type: 'gcj02',
geocode: true,
success: function(res) {
// 获取地址成功 ==> 经纬度
_this.latitudeEnd = res.latitude // 纬度
_this.longitudeEnd = res.longitude // 经度
// 当前位置获取
_this.addrEnd = res.address
},
fail: function(res) {
_this.locationCheckFlagEnd = true
_this.localCheckFalseEnd = true
_this.uploadAbnFlagEnd = true
uni.showToast({
// title: res.errMsg,
title: '获取定位错误,请允许应用设备定位权限授权',
icon: 'none',
duration: 3000
});
},
complete: function() {
_this.isLoading = false
uni.hideLoading();
}
});
},

操作步骤:

打开页面,同意定位权限以后,请求uni.getLocation,进入成功回调,返回的经纬度数据异常

预期结果:

打开页面,同意定位权限以后,请求uni.getLocation,进入成功回调,返回的经纬度数据符合正常

实际结果:

{"type":"gcj02","altitude":5e-324,"latitude":5e-324,"longitude":5e-324,"speed":0,"accuracy":0,"errMsg":"getLocation:ok"}

bug描述:

uni.getLocation的成功回调,使用的第三方地图为百度地图,大多数手机及用户获取正常,部分异常;回调成功后,经纬度为5E-324,address为空。

2024-10-14 11:16 负责人:无 分享
已邀请:
BoredApe

BoredApe - 有问题就会有答案。

请检查1.百度地图申请appkey是否正确,包名和SHA1是否正确
2.如果出现可以看一下app权限是否已授权定位权限

  • 2***@qq.com (作者)

    这些配置是正确的,不然也不会是部分手机地址定位异常;权限也是正常授权

    2024-10-14 11:30

DCloud_UNI_OttoJi

DCloud_UNI_OttoJi - 日常回复 uni-app/x 问题,如果艾特我没看到,请主动私信

大多数用户可以,部分异常,看看是否有什么规律

参考 ask 社区 其他用户的反馈

看起来是设置的原因,你可以测试一下权限拒绝的情况,针对这个特殊的返回值单独提示用户去授权解决

要回复问题请先登录注册