`

tencent API(三) 接收,解析个人信息

阅读更多

 

 private static final String GRAPH_SIMPLE_USER_INFO = "user/get_user_info";
   /**
    * 用户信息
    */
 private void onClickUserInfo() {
 	if (ready()) {
         BaseApiListener  requestListener=new BaseApiListener("get_user_info", false);
	    	Bundle params = composeCGIParams();
	    	mTencent.requestAsync(GRAPH_SIMPLE_USER_INFO, params, Constants.HTTP_GET, requestListener, null);
	        mProgressDialog.show();
	       
 	}
 }

 

 

1. Tencent类的request或requestAsync接口简介

在SDK中,有一些功能接口,如登录,分享消息到QQ等,SDK对其调用单独封装成了独立的接口;但是,SDK中的另外一些接口,如获取用户信息、获取用户相册列表、发送分享(addshare)、发表说说、上传图片、创建相册等,则被统一封装在Tencent类的request或requestAsync方法中,通过传入不同的参数实现不同的接口调用。request和requestAsync这两个接口的功能相同

获取用户信息有两种方式:同步方式和异步方式

request(String graphPath, Bundle params, String httpMethod) 发送同步调用请求访问腾讯提供的OpenAPI。

requestAsync(String graphPath, Bundle params, String httpMethod, IRequestListener listener, Object state) 发送异步调用请求访问腾讯提供的OpenAPI。

 

先看下参数说明:

参数 参数说明
graphPath 要调用的接口名称,通过SDK中的Constant类获取宏定义。
params 以K-V组合的字符串参数。Params是一个Bundle类型的参数,里面以键值对(Key-value)的形式存储数据,应用传入的邀请分享等参数就是通过这种方式传递给SDK,然后由SDK发送到后台。
httpMethod 使用的http方式,如Constants.HTTP_GET,Constants.HTTP_POST。
listener 回调接口,IUiListener实例。
state 状态对象,将在回调时原样传回给 listener,供应用识别异步调用。SDK内部不访问该对象。

 

 

接收到的个人信息如下:

 

{ 
"is_yellow_year_vip": "0",是否为年费黄钻用户(0:不是; 1:是)

 

    "ret": 0,//
    "figureurl_qq_1": "http://q.qlogo.cn/qqapp/222222/8C75BBE3DC6B0E9A64BD31449A3C8CB0/40",
    "figureurl_qq_2": "http://q.qlogo.cn/qqapp/222222/8C75BBE3DC6B0E9A64BD31449A3C8CB0/100",
    "nickname": "AMB",//昵称
    "yellow_vip_level": "0",//黄钻等级
    "msg": "",
    "figureurl_1": "http://qzapp.qlogo.cn/qzapp/222222/8C75BBE3DC6B0E9A64BD31449A3C8CB0/50",
    "vip": "0",//开了几个vip
    "level": "0",//等级
    "figureurl_2": "http://qzapp.qlogo.cn/qzapp/222222/8C75BBE3DC6B0E9A64BD31449A3C8CB0/100",
    "is_yellow_vip": "0",是否为黄钻用户(0:不是; 1:是)。
    "gender": "男",//性别
    "figureurl": "http://qzapp.qlogo.cn/qzapp/222222/8C75BBE3DC6B0E9A64BD31449A3C8CB0/30"
}

 一般通常有以下情况

 int ret;
    int is_lost;// 判断是否有数据丢失。如果应用不使用cache,不需要关心此参数。 0或者不返回:没有数据丢失,可以缓存。 1:有部分数据丢失或错误,不要缓存。
    PXStringA nickname;// 昵称
    PXStringA gender;// 性别
    PXStringA country;// 国家(当pf=qzone、pengyou或qplus时返回)
    PXStringA province;// 省(当pf=qzone、pengyou或qplus时返回)
    PXStringA city;//市(当pf=qzone、pengyou或qplus时返回)
    PXStringA figureurl;//头像URL
    int is_yellow_vip;// 是否为黄钻用户(0:不是; 1:是)。
    int is_yellow_year_vip;// 是否为年费黄钻用户(0:不是; 1:是)。
    int yellow_vip_level;// 黄钻等级,目前最高级别为黄钻8级(如果是黄钻用户才返回此参数)。
    int is_yellow_high_vip;// 是否为豪华版黄钻用户(0:不是; 1:是)。
    int is_blue_vip;// 是否为蓝钻用户(0:不是; 1:是)。
    int is_blue_year_vip;// 是否为年费蓝钻用户(0:不是; 1:是)。
    int blue_vip_level;// 蓝钻等级(如果是蓝钻用户才返回此参数)。
    int is_super_blue_vip;// 是否是豪华蓝钻。(当pf=qqgame或3366时返回)
    TencentUserInfo_T()
    {
        ret =0;
        is_lost = 0;
        is_yellow_vip =0;
        is_yellow_year_vip=0;
        yellow_vip_level=0;
        is_yellow_high_vip=0;
        is_blue_vip = 0;
        is_blue_year_vip = 0;
        blue_vip_level = 0;
        is_super_blue_vip = 0;
    }

 

2
0
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics