获取用户地理位置,需要用到以下三个api方法:
wx.getSetting() : 获取用户的授权列表信息
wx.openSetting():调起客户端小程序设置界面
wx.getLocation():获取用户当前位置
<view bindtap='getCurrentLocal'>获取当前位置</view>
当用户点击“获取当前位置”时,我们调用 wx.getSetting() 方法来获取用户授权相关信息,判断 wx.getSetting() 方法返回的结果中是否包含地理位置的授权信息。
'scope.userLocation' 字段表示的是地理位置授权,其它api的授权,如获取用户信息、相机等其它授权字段,可以查看官网,有对应的文档,灰机直达 ,具体代码如下:
// 获取当前地理位置 授权验证 getCurrentLocal(){ let that = this; wx.getSetting({ success(res) { if (res.authSetting['scope.userLocation'] == false){// 如果已拒绝授权,则打开设置页面 wx.openSetting({ success(res) {} }) } else { // 第一次授权,或者已授权,直接调用相关api that.getMyLocation() } } }) }, // 获取当前地理位置 getMyLocation(){ let that = this wx.getLocation({ type: 'wgs84', success(res) { console.log(res) } }) },