uni-app小程序端,uni.getLocation在调试版运行良好,但正式版授权获取位置弹窗不出现

uni-app小程序端,uni.getLocation在调试版运行良好,但正式版授权获取位置弹窗不出现

一个获取地理位置的程序,使用了uni.getLocation,在体验版里,一切都工作良好。但是发布到正式版以后,点击进入页面,没有弹出授权获取地理位置弹窗,也不报错,就在那儿一直转啊转,这是怎么回事

6 回复

小程序的 小程序隐私保护指引 中有没有增加 定位权限? uni.getLocation的fail回调也没有触发吗?

更多关于uni-app小程序端,uni.getLocation在调试版运行良好,但正式版授权获取位置弹窗不出现的实战教程也可以访问 https://www.itying.com/category-93-b0.html


果然是你说的这个,我把2个需要开通权限的配置在下面贴出来了

在小程序后台2处需要开通接口权限的地方


此贴确认为不是bug,作者请检查小程序后台接口配置

已解决,是配置问题

这是典型的权限配置问题。在uni-app小程序中,正式版和调试版的权限处理机制有所不同。以下是可能的原因和解决方案:

  1. 权限配置缺失:在小程序管理后台的"开发-开发管理-接口设置"中,需要确保"地理位置"权限已申请并审核通过。

  2. 代码层面问题:

  • 正式版会严格校验权限配置,建议在调用uni.getLocation前先检查权限状态:
uni.getSetting({
  success(res) {
    if (!res.authSetting['scope.userLocation']) {
      uni.authorize({
        scope: 'scope.userLocation',
        success() {
          // 授权成功后再调用getLocation
          uni.getLocation({...})
        }
      })
    }
  }
})
回到顶部