有问
有问
  • 发布:2021-12-20 15:54
  • 更新:2021-12-20 17:04
  • 阅读:650

【报Bug】新版HBX自定义基座总是定位失败

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

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

HBuilderX类型: Alpha

HBuilderX版本号: 3.3.2

手机系统: Android

手机系统版本号: Android 10

手机厂商: 华为

手机机型: 荣耀30,鸿蒙系统

页面类型: vue

vue版本: vue2

打包方式: 云端

项目创建方式: HBuilderX

示例代码:

let that=this;
uni.getLocation({
type: 'wgs84',
geocode:true,//解析地址
success: function (res) {
console.log('当前位置的经纬度:' + res.longitude+'|'+res.latitude);
console.log('当前地址:'+JSON.stringify(res.address))
},
fail:function(){
uni.showModal({
title: '错误:',
content: "定位失败",
showCancel:false
});
}
});

操作步骤:

手机上先删除旧的基座,然后新版HBX打包自定义基座,安装后权限允许定位,但是使用代码中的获取位置后一直定位失败,定位代码没有改动过,之前打包都是可以的。IOS还未测试。勾选使用系统定位,重新打包也一样。

预期结果:

能够定位成功。

实际结果:

定位失败。

bug描述:

新版打包后,安卓自定义基座始终无法获取定位信息,一直提示定位失败!
IOS尚未测试。

2021-12-20 15:54 负责人:DCloud_UNI_GSQ 分享
已邀请:
有问

有问 (作者) - 生活,趣与失。

几乎秒提示定位失败,好像功能失效了一样。。。

包拯

包拯 - 包青天

是不是3.3.2.20211218-alpha 版本,安卓高德地图定位失败

  • 有问 (作者)

    3.3.2.20211218-alpha

    对,刚升级的。安卓高德定位直接失败,IOS还未测试。你也是?

    2021-12-20 16:18

  • 包拯

    回复 有问: 是的, 我今天更新后也是,uni.getLocation直接 走到fail 里面了, 你可以在fail里面打印一下

    2021-12-20 16:32

  • 有问 (作者)

    回复 包拯: 一样的,我就是在里面打印的,直接失败,连呼吸的空都没有,可能并未执行相关操作,感觉没有进入到相关流程似的。

    2021-12-20 16:38

DCloud_Android_ST

DCloud_Android_ST

问题已确认

  • 有问 (作者)

    你好,我看到你们更新了打包机,但这个定位还是有问题,geocode:true,//解析地址这个=真时,仍然没有返回地址信息,只有坐标。

    {"type":"wgs84","altitude":0,"latitude":31.314689,"longitude":120.630014,"speed":0,"accuracy":100,"errMsg":"getLocation:ok"}

    这个是返回的全部内容。

    2021-12-21 15:36

  • DCloud_Android_ST

    回复 有问: wgs84使用的系统定位没有地址解析。你可以选择gcj02

    2021-12-21 15:44

  • 有问 (作者)

    回复 DCloud_Android_ST: 。。。好吧,又改了。以前我都是用的WGS84。

    2021-12-21 15:53

  • DCloud_UNI_GSQ

    回复 有问: 你之前是用在什么场景?确认需要的是WGS84吗?

    2021-12-21 16:16

  • 有问 (作者)

    回复 DCloud_UNI_GSQ: 我之前一直是WGS84,一直获取地址没问题。因为之前的坐标用的是WGS84,现在换了gcj02,我还没来得及测试之前的坐标会不会有问题。明天再测试。

    2021-12-21 18:03

  • DCloud_UNI_GSQ

    回复 有问: 之前为什么使用WGS84?

    2021-12-22 10:59

  • 有问 (作者)

    回复 DCloud_UNI_GSQ: 记不太清了,好像说是默认是WGS84,然后百度地图上好像也是这个坐标,但后来转了高德地图,虽然也用的WGS84不过好像也没遇到问题,IOS也没遇到问题。

    2021-12-22 19:50

  • 有问 (作者)

    回复 有问: 回复 DCloud_UNI_GSQ: 印象中好像是用百度地图的JS API获取坐标时,用WGS84是比较准确和正确的。后来转了高德,而且你们也没有更新,我也没遇到什么问题就一直用WGS84了。所以现在这个统一了吗?是不是IOS和安卓都必须是GCJ02才可以获取地址?还是说IOS可以用WGS84,安卓要用GCJ02?

    2021-12-22 19:53

  • 有问 (作者)

    回复 DCloud_UNI_GSQ: 现在改成GCJ02是不是要向北斗靠拢?

    2021-12-22 19:59

  • DCloud_UNI_GSQ

    回复 有问: 国内一直使用GCJ02。之前你是误以为自己使用的WGS84,实际上使用的GCJ02。参考:https://ask.dcloud.net.cn/article/39552

    2021-12-27 12:19

  • DCloud_UNI_GSQ

    你需要的是GCJ02,实际上你之前用的也是GCJ02,只不过,之前type参数不生效,你误以为自己用的WGS84。

    2021-12-27 12:20

  • 有问 (作者)

    回复 DCloud_UNI_GSQ: 哦哦。好吧。

    2021-12-27 14:04

该问题目前已经被锁定, 无法添加新回复