userPlugin.getUserInfo()微信平台无返回值

onUserResult: function (code, msg) {
cc.log(“on user result action.”);
cc.log(“msg:” + msg);
cc.log(“code:” + code); //这里可以根据返回的 code 和 msg 做相应的处理
if (mm && mm.tips) {
mm.tips.show(“msg:” + msg + “,code:” + code);
}
switch (code) {
case anysdk.UserActionResultCode.kInitSuccess://初始化 SDK 成功回调
//SDK 初始化成功,游戏相关处理
break;
case anysdk.UserActionResultCode.kInitFail://初始化 SDK 失败回调
//SDK 初始化失败,游戏相关处理
break;
case anysdk.UserActionResultCode.kLoginSuccess: //登陆成功回调
//登陆成功后,游戏相关处理
var userID = this.userPlugin.getUserID();
cc.log(“userID:” + userID);
if (mm && mm.tips) {
mm.tips.show(“userID:” + userID);
}
this.userPlugin.getUserInfo();
break;
case anysdk.UserActionResultCode.kLoginNetworkError: //登陆网络出错回调
case anysdk.UserActionResultCode.kLoginCancel: //登陆取消回调
case anysdk.UserActionResultCode.kLoginFail: //登陆失败回调
//登陆失败后,游戏相关处理
break;
case anysdk.UserActionResultCode.kGetUserInfoSuccess:
cc.log(“userinfo:” + msg);
if (mm && mm.tips) {
mm.tips.show(“userinfo:” + msg);
}
break;
case anysdk.UserActionResultCode.kGetUserInfoFail:
break;
}
},

登陆成功,并成功取得userID,但无法得到用户信息,userPlugin.getUserInfo(),没有任何返回值。奇怪了。

调用方式不对,请参考http://docs.anysdk.com/faq/sdk-params/#_60下半部分

getUserInfo是微信插件特有方法,不存在于框架中,所以不能直接使用userPlugin方法调用,需要当做扩展方法,使用callStringFuncWithParam等方式来调用

调用扩展方法前最好先使用isSupportFunction来判断这个扩展方法是否存在。

1赞

暂时没用anysdk了,this.userPlugin.callStringFuncWithParam(‘getUserInfo’);