由于官方将openSetting() API去掉改用手动调用授权登录及授权定位,在首次登录时获取用户授权的状态时使用getSetting,在vivo与OPPO手机上测试时返回状态都为true,在其他手机可以(包括ios);如
wx.getSetting({
success: (res)=>{
console.log(res.authSetting[‘scope.userLocation’]); // true
console.log(res.authSetting[‘scope.userInfo’]); // true
}
})
获取用户当前授权状态时无法判断,求解。。
谢谢…
wx.getSetting({
success: function (res) {
if (res.authSetting[‘scope.userInfo’]) {
// 已经授权,可以直接调用 getUserInfo 获取头像昵称
wx.getUserInfo({
success: function (res) {
app.globalData.userInfo = res.userInfo
that.setData({
empower: false,
hasUserInfo: true
})
app.globalData.empower = that.data.empower;
console.log(res.userInfo)
}
})
} else {
that.setData({
empower: true //显示自己写的授权按钮
})
app.globalData.empower = that.data.empower;
}
}
})
可以通过判断userInfo是否有值