コード例 #1
0
    //获取用户信息
    void GetUserInfoResultHandler(int reqID, ResponseState state, PlatformType type, Hashtable result)
    {
        if (state == ResponseState.Success)
        {
            //获取成功的话 可以写一个类放不同平台的结构体,用PlatformType来判断,用户的Json转化成结构体,来做第三方登录。
            switch (type)
            {
            case PlatformType.WeChat:
                Hashtable wxuser = shareSdk.GetAuthInfo(PlatformType.WeChat);
                JsonData  wxjd   = JsonMapper.ToObject(MiniJSON.jsonEncode(wxuser));
                lable.text = "userID:" + wxjd["userID"].ToString();      //Json
                break;

            case PlatformType.QQ:
                Hashtable user = shareSdk.GetAuthInfo(PlatformType.QQ);
                //lable.text = (MiniJSON.jsonEncode(result));  //Json
                JsonData jd = JsonMapper.ToObject(MiniJSON.jsonEncode(user));
                //实例化当前登录的QQ用户信息
                CurrentQQuserInfo = new QQuserInfo(jd["userID"].ToString(), jd["userName"].ToString(), jd["userIcon"].ToString(), jd["token"].ToString());
                lable.text        = "userID:" + CurrentQQuserInfo.userID; //Json
                break;
            }
        }
        else if (state == ResponseState.Fail)
        {
            lable.text = ("fail! error code = " + result["error_code"] + "; error msg = " + result["error_msg"]);
        }
        else if (state == ResponseState.Cancel)
        {
            lable.text = ("cancel !");
        }
    }
コード例 #2
0
ファイル: Loding.cs プロジェクト: Fransice/ShareSDK
    /// <summary>
    /// 授权回掉
    /// </summary>
    /// <param name="reqID"></param>
    /// <param name="state"></param>
    /// <param name="type"></param>
    /// <param name="result"></param>
    void AuthResultHandler(int reqID, ResponseState state, PlatformType type, Hashtable result)
    {
        switch (state)
        {
        case ResponseState.Success:
            print("authorize success !");

            //在控制台输出
            myConsole.text += "\n" + "authorize success !";

            Hashtable user = shareSdk.GetAuthInfo(PlatformType.QQ);

            print("get user info result =====================>:");
            print(MiniJSON.jsonEncode(user));

            JsonData jd = JsonMapper.ToObject(MiniJSON.jsonEncode(user));

            //实例化当前登录的QQ用户信息
            CurrentQQuserInfo = new QQuserInfo(jd["userID"].ToString(), jd["userName"].ToString(),
                                               jd["userIcon"].ToString(), jd["token"].ToString());

            //打印用户信息
            print("userID:" + CurrentQQuserInfo.userID + "===" + "userName:"******"===" +
                  "userIcon:" + CurrentQQuserInfo.userIcon + "===" +
                  "token:" + CurrentQQuserInfo.token);


            //在控制台输出
            myConsole.text += "\n" + "userID:" + CurrentQQuserInfo.userID + "===" + "userName:"******"===" + "userIcon:" + CurrentQQuserInfo.userIcon +
                              "===" +
                              "token:" + CurrentQQuserInfo.token;
            break;

        case ResponseState.Fail:
            print("fail! throwable stack = " + result["stack"] + "; error msg = " + result["msg"]);
            break;

        case ResponseState.Cancel:
            print("cancel !");
            break;
        }
    }