html52.com
我爱小程序-开发者交流社区

wx.getLocation() 方法的问题

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug wx.getLocation() 客户端 6.7.3 2.4


<button bindtap='openSetting'>打开设置</button>


>界面中使用了一个按钮,触发 打开设置,在手机端授权后(这里授权了定位),点左上返回后,这时调用wx.getLocation()依然会失败,需



界面中使用了一个按钮,触发 打开设置,在手机端授权后(这里授权了定位),点左上返回后,这时调用wx.getLocation()依然会失败,需要再打开设置界面,再返回,这时才能调用成功(而且偶尔调用成功了,经纬度返回的是0的情况)。而在PC开发时,是可以调用成功的。这应该算是API BUG吧。



这里使用getsetting获取到定位权限后,再去调用location api ,依旧会调用不到。

这里使用getsetting获取到定位权限后,再去调用location api ,依旧会调用不到。已经想办法解决了,记录下,可以参考下我的方法:

这里使用getsetting获取到定位权限后,再去调用location api ,依旧会调用不到。已经想办法解决了,记录下,可以参考下我的方法:




已经想办法解决了,记录下,可以参考下我的方法:

使用

<button open-type='openSetting' bindopensetting='openSetting'>打开设置</button>


在回调中

e.detail.authSetting["scope.userLocation"]

当true 时就调用。

上传到体验版才会生效。折腾了好半天。坑啊。


网友回复

EXIF影子:

就算setsetting()是异步的接口,那么我调用 了getsetting()  返回了已经授权,那么这时调用wx.getlocation() 为啥也会错误呢?

卢霄霄:

这个。。官方回了。。openSetting设值这个。。是异步到微信服务器的。。所以立即返回后使用,没权限。。

左尘:

这确定不是你返回太快了,系统设置数据还没刷新

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

真正的个人免签约支付接口

云免签H5支付