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里边的配置吧,应该很少会有人再点进这个不明显的公告里边去吧?
反正我之前是没注意,直到出了异常,而且上个月都没报这个错误,就这个月突然出现了。
所以,深切怀疑腾讯是流水线模式,有些方面就是各顾各的,也就造成了不同步的情况。
这个就不吐槽了,说多了都是泪,一句话,开发支付宝小程序比微信小程序要顺利多了!