微信小程序开发——getLocation:fail the api need to be declared in the requiredPrivateInfos field in app.json/ext.json

发布时间 2023-04-11 18:07:39作者: 逍遥云天
getLocation:fail the api need to be declared in the requiredPrivateInfos field in app.json/ext.json

异常解析:

app.json中没配置requiredPrivateInfos参数,按下边示例代码配置即可。

示例代码:

{
  ...
  "permission": {
    "scope.userLocation": {
      "desc": "你的位置信息将用于推荐当前城市可以购买的商品"
    }
  },
  "requiredPrivateInfos": [
    "getLocation"
  ],
  ...
}

注:permission、requiredPrivateInfos两个参数都要配置才可以。

获取定位api有调整,2022年7月14日后发布的小程序,都需要配置requiredPrivateInfos,而且需要申请接口权限,官方文档详见:全局配置 | 微信开放文档 (qq.com)

后记:

这个真的要吐槽下了,微信小程序开发文档这块儿有的时候真的没法说。

之前一直没留意过这个调整,因为以前用的也不多,只知道有permission这个配置,直到今天才注意到这个 requiredPrivateInfos 配置的调整。

只有点击进入这个不明显的“具体规则见公告”页面,才能看到地理位置接口新增与相关流程调整 | 微信开放社区 (qq.com)

这个也太不明显了,如果不经常用这个api,不知道这个调整的,那大部分都会认为这个配置是permission里边的配置吧,应该很少会有人再点进这个不明显的公告里边去吧?

反正我之前是没注意,直到出了异常,而且上个月都没报这个错误,就这个月突然出现了。

所以,深切怀疑腾讯是流水线模式,有些方面就是各顾各的,也就造成了不同步的情况。

这个就不吐槽了,说多了都是泪,一句话,开发支付宝小程序比微信小程序要顺利多了!