4.手机QQ相关

优质
小牛编辑
122浏览
2023-12-01

QQ轻游戏不支持获取好友关系链。支持获取头像、昵称、性别三种用户信息

1.昵称

BK.MQQ.Account.getNick(openID,callback)

获取昵称

参数:

参数类型名称备注
openIDstring待查询用户的openid
callbackfunction回调函数

返回值:无

例子:

function callback(openID,nick){
   BK.Script.log(0,0,"Nick :"+ nick);
}

BK.MQQ.Account.getNick(openID1,callback);
BK.MQQ.Account.getNick(openID2,callback);
BK.MQQ.Account.getNick(openID3,callback);
BK.MQQ.Account.getNick(openID4,callback);

注意事项

函数并不会为每个openId绑定一个callback函数。若多次调用getNick函数,最终只会调用最后一次绑定的callback。因此开发者需要在此函数作分发动作

2.头像

BK.MQQ.Account.getHead(openID,callback)

获取头像 因返回的头像数据为位图信息,适用于使用bricks原生渲染,基于webgl渲染的方式(laya、cocos、egret)使用本接口会不太方便,请使用下方的BK.MQQ.Account.getHeadEx

参数:

参数类型名称备注
openIDstring待查询用户的openid
callbackfunction回调函数回调参数中的buff为图片的位图信息,width,height为位图宽高

返回值:无

例子:

function callback(openID, BuffInfo){
    if(openID == openID1)
    {
        var buff = BuffInfo.buffer;
        var width = BuffInfo.width;
        var height = BuffInfo.height;
        BK.Script.log(0,0,"headeBuff :"+ openId + " buff:"+ buff + " width:"+ width +" height:"+height);

        //buff为图片的位图信息
        var tex = new BK.Texture(buff,width,height);
        var sp =new BK.Sprite(200,200,tex,0,1,1,1);

        BK.Director.root.addChild(sp);
    }else if(openID == openID2){
        ...
    }
}
BK.MQQ.Account.getHead(openID1, callback);
BK.MQQ.Account.getHead(openID2, callback);

注意事项

  1. 同getNicke函数,引擎不会为每个openId绑定一个callback函数。若多次调用getNick函数,最终只会调用最后一次绑定的callback。因此开发者需要在此函数作分发动作。
  2. 回调参数中使用BK.Buffer对象存储图片数据,若需显示到精灵中,需按例子中生成纹理,并绑定到精灵中

BK.MQQ.Account.getHeadEx(openID,callback)

获取头像 并写到本地目录。

参数:

参数类型名称备注
openIDstring待查询用户的openid
callbackfunction回调函数
var openId = "XXXXXXX"
BK.MQQ.Account.getHeadEx(openId, function (openId, imgPath) {
    //openId为图片对应openid
    //imgPath为头像保存至本地的路径
});