iOS的应用中集成QQ第三方登录获取相关信息

来源:互联网 发布:java 项目的根目录 编辑:程序博客网 时间:2024/05/17 06:23

第一步:首先集成友盟的分享的SDK

http://www.umeng.com/codecenter.html  集成iOS版本的 U-Share 分享 下载SDK集成

这里面的教程很全我就不多说了哈,按照教程来。

第二步:在微信,QQ,新浪的开放平台中注册Appid,并获取Appid,AppSecret 等用户分享和第三放登录

第三步:在程序中需要的地方调用第三方登录授权代码


//平台的类型--start

/////////////////////////////////////////////////////////////////////////////

typedefNS_ENUM(NSInteger,UMSocialPlatformType)

{

    UMSocialPlatformType_UnKnown            = -2,

    //预定义的平台

    UMSocialPlatformType_Predefine_Begin    = -1,

    UMSocialPlatformType_Sina               =0, //新浪

    UMSocialPlatformType_WechatSession      =1, //微信聊天

    UMSocialPlatformType_WechatTimeLine     =2,//微信朋友圈

    UMSocialPlatformType_WechatFavorite     =3,//微信收藏

    UMSocialPlatformType_QQ                 =4,//QQ聊天页面

    UMSocialPlatformType_Qzone              =5,//qq空间

    UMSocialPlatformType_TencentWb          =6,//腾讯微博

    UMSocialPlatformType_AlipaySession      =7,//支付宝聊天页面

    UMSocialPlatformType_YixinSession       =8,//易信聊天页面

    UMSocialPlatformType_YixinTimeLine      =9,//易信朋友圈

    UMSocialPlatformType_YixinFavorite      =10,//易信收藏

    UMSocialPlatformType_LaiWangSession     =11,//点点虫(原来往)聊天页面

    UMSocialPlatformType_LaiWangTimeLine    =12,//点点虫动态

    UMSocialPlatformType_Sms                =13,//短信

    UMSocialPlatformType_Email              =14,//邮件

    UMSocialPlatformType_Renren             =15,//人人

    UMSocialPlatformType_Facebook           =16,//Facebook

    UMSocialPlatformType_Twitter            =17,//Twitter

    UMSocialPlatformType_Douban             =18,//豆瓣

    UMSocialPlatformType_KakaoTalk          =19,//KakaoTalk

    UMSocialPlatformType_Pinterest          =20,//Pinteres

    UMSocialPlatformType_Line               =21,//Line

    

    UMSocialPlatformType_Linkedin           =22,//领英

    

    UMSocialPlatformType_Flickr             =23,//Flickr


    UMSocialPlatformType_Tumblr             =24,//Tumblr

    UMSocialPlatformType_Instagram          =25,//Instagram

    UMSocialPlatformType_Whatsapp           =26,//Whatsapp

    UMSocialPlatformType_DingDing           =27,//钉钉

    UMSocialPlatformType_Predefine_end      =999,

    

    //用户自定义的平台

    UMSocialPlatformType_UserDefine_Begin =1000,

    UMSocialPlatformType_UserDefine_End =2000,

};


/**

 第三方登录平台获取平台信息


 @param platformType 平台类型

 */

- (void)getUserInfoForPlatform:(UMSocialPlatformType)platformType

{

    [[UMSocialManagerdefaultManager] getUserInfoWithPlatform:platformTypecurrentViewController:selfcompletion:^(id result,NSError *error) {

        

        UMSocialUserInfoResponse *resp = result;

        

        //第三方登录数据(为空表示平台未提供)

        //授权数据

        NSLog(@" uid: %@", resp.uid);

        NSLog(@" openid: %@", resp.openid);

        NSLog(@" accessToken: %@", resp.accessToken);

        NSLog(@" refreshToken: %@", resp.refreshToken);

        NSLog(@" expiration: %@", resp.expiration);

        

        //用户数据

        NSLog(@" name: %@", resp.name);

        NSLog(@" iconurl: %@", resp.iconurl);

        NSLog(@" gender: %@", resp.gender);

        

        //第三方平台SDK原始数据

        NSLog(@" originalResponse: %@", resp.originalResponse);

        

        [MBProgressHUDshowSuccess:[NSStringstringWithFormat:@"%@登录成功", resp.name]toView:self.view];

    }];

}

}


遇到的问题:1. QQ第三方登录 错误码110406
公司应用使用QQ授权登录 总是报110406错误码 然后在网上找了好多 终于找到 原因是因为:当在腾讯开放平台申请的移动应用还未通过审核时,进行登录授权会遇到110406的错误码,这时候你需要到“应用管理->用户能力->进阶社交能力->应用调试者”中添加你用来登录的QQ号码。 但是 这个要求的同时还需要你与创建这个应用关联的QQ号码为白名单(好友)时,你才能够申请成功 最后用你的测试账号 登录授权就OK了。。。