l***@163.com
l***@163.com
  • 发布:2019-10-29 17:51
  • 更新:2019-11-09 18:58
  • 阅读:2054

【报Bug】H5端使用uni.getLocation与plus.geolocation.getCurrentPosition获取地理位置均失败,APP端正常

分类:HTML5+

详细问题描述

(DCloud产品不会有明显的bug,所以你遇到的问题大都是在特定环境下才能重现的问题,请仔细描述你的环境和重现方式,否则DCloud很难排查解决你的问题)

[内容]

重现步骤

[步骤]
使用Chrome进行本地访问
[结果]
没有反应,定位代码就像没有运行
[期望]
获取到地理位置
[如果语言难以表述清晰,拍一个视频或截图,有图有真相]

IDE运行环境说明

[HBuilder 或 HBuilderX。如果你用其他工具开发uni-app,也需要在此说明]
HBuilderX
[IDE版本号]
2.3.7.20191024
[windows版本号]
windows10
[mac版本号]

uni-app运行环境说明

[运行端是h5或app或某个小程序?]
H5
[运行端版本号]
Chrome 77.0.3865.120
[项目是cli创建的还是HBuilderX创建的?如果是cli创建的,请更新到最新版cli再试]
HBuilderX
[编译模式是老模板模式还是新的自定义组件模式?]
老模板

附件

[IDE问题请提供HBuilderX运行日志。菜单帮助-查看运行日志,点右键打开文件所在目录,将log文件压缩成zip包上传]

[App问题请提供可重现问题的代码片段,你补充的细一点,问题就解决的快一点]

[App安装包或H5地址]

[可重现代码片段]
uni.getLocation({
type: 'wgs84',
success: function (res) {
console.log(res)
}
});
plus.geolocation.getCurrentPosition(function(p){
console.log(p)
}, function(e){
console.log(e)
} );

联系方式

[QQ]1822612050

2019-10-29 17:51 负责人:无 分享
已邀请:
u***@gmail.com

u***@gmail.com

我这边以为出现一样的问题,实际是获取时长高达2min,在两分钟后才返回获取失败

u***@gmail.com

u***@gmail.com

原因是chrome上没有GPS,uni app调用navigator.geolocation.getCurrentPosition获取坐标会请求google api。国内请求不到导致了失败

  • u***@gmail.com

    navigator.geolocation.getCurrentPosition默认是优先使用低精度的ip获取地址。不知道uni app有没有设置使用高精度的参数为true,如果没有的话,有GPS好像也不会使用GPS而是有限通过ip请求google的api换算地址

    2019-11-09 19:01

u***@gmail.com

u***@gmail.com

目前来看唯一的办法是H5端调用国内高德/腾讯的api接口获取位置

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