- egret 导出为微信小游戏后替换 'platform.js' 中的 'getUserInfo'
getUserInfo() {
return new Promise((resolve, reject) => {
let sysInfo = wx.getSystemInfoSync();
let sdkVersion = sysInfo.SDKVersion;
sdkVersion = sdkVersion.replace(/\./g, "");
sdkVersion = sdkVersion.substr(0, 3);
let sdkVersionNum = parseInt(sdkVersion);
// 判断是否已经授权 - 并且兼容 2.0.1 以前版本获取
wx.getSetting({
success(res) {
if (sdkVersionNum >= 201 && !res.authSetting['scope.userInfo']) {
// 创建获取用户信息按钮
var button = wx.createUserInfoButton({
type: 'image',
text: '',
image: "http://www.oneh5.com/iptv/h5/egret/billiard/resource/game/jiqiu.png",
style: {
left: 0,
top: 0,
width: 100,
height: 100
}
});
button.onTap((res) => {
if (res.userInfo) {
console.log("用户授权:", res);
var userInfo = res.userInfo;
var nickName = userInfo.nickName;
var avatarUrl = userInfo.avatarUrl;
var gender = userInfo.gender; //性别 0:未知、1:男、2:女
var province = userInfo.province;
var city = userInfo.city;
var country = userInfo.country;
button.destroy();
resolve(userInfo);
} else {
wx.showModal({
title: '友情提醒',
content: '请允许微信获得授权!',
showCancel: false,
cancelColor: '#000000',
confirmText: '确定',
confirmColor: '#3cc51f'
});
}
});
} else {
// 已授权 - 直接获取
wx.getUserInfo({
withCredentials: true,
success: res => {
var userInfo = res.userInfo;
var nickName = userInfo.nickName;
var avatarUrl = userInfo.avatarUrl;
var gender = userInfo.gender; //性别 0:未知、1:男、2:女
var province = userInfo.province;
var city = userInfo.city;
var country = userInfo.country;
resolve(userInfo);
},
fail: res => {
wx.showModal({
title: '友情提醒',
content: '请允许微信获得授权!',
showCancel: false,
cancelColor: '#000000',
confirmText: '确定',
confirmColor: '#3cc51f'
});
}
});
}
}
});
})
}
网友评论