微米快讯

微信小程序获取用户位置信息时需填写用途说明问题

昨天,在copy,前同事做过的一个小程序(换了不同的版本,也叫重新弄了一些,仿制了一下前端效果),在过程中,遇到了一个之前没遇到的问题,就是在获取用户位置,计算与显示距离是,不断弹出,设置弹版,之前没遇到过此类问题,于是 Tim 童鞋进行了拆分,发现并无异常,于是赶紧忙另一件事情,放掉了这个事。

效果参考

获取用户位置信息时需填写用途说明

今天,在查找问题,突然发现,微信小程序的更新,于是轻松解决,以后还是应该多关注一下(当然,也是因为不经常调取距离,之前的版本是没有问题的,也就不会在意了)。

部分原文

在一些小程序/小游戏的业务逻辑中,有时需要依赖用户所在的地理位置来提供服务,当前开发者可以通过调用 调用 wx.getLocation / wx.authorize 等接口获取用户的地理位置信息或授权。

根据 iOS 系统对用户隐私保护的要求,同时我们也为了让用户可以更好的判断是否要将地理位置信息提供给开发者,故调整为当小程序/小游戏获取用户地理位置信息时,开发者需要填写获取用户地理位置的用途说明。填写的说明将在地理位置授权弹窗中展示,如下图所示:

获取用户位置信息时需填写用途说明

具体开发方法如下:

在 app.json 里面增加 permission 属性配置(小游戏需在game.json中配置):

"permission":{
   "scope.userLocation":{
   "desc":"你的位置信息将用于小程序位置接口的效果展示"
   }
 }, 

详见 小程序开发文档/小游戏开发文档

可在开发者工具(1.02.1812260及以上版本)中进行调试。

2019年1月14日起新提交发布的版本将会受到此调整的影响。

需要各位开发者注意,2019年1月14日起新提交发布的版本若未填写地理位置用途说明,则将无法正常调用地理位置相关接口,请及时填写地理位置用途说明。该调整策略在微信客户端 7.0.0 版本生效。另外,考虑到兼容性等问题,在微信客户端 7.0.0 版本以下的环境中不受此策略影响。