您的位置:首页 > 移动开发 > IOS开发

iOS开发日记4-第三方登录(ShareSDK)

2015-08-18 16:01 639 查看
今天博主有一个第三方登录的需求,遇到了一些困难点,在此和大家分享,希望能够共同进步.

第三方登录的方法很多,最直接的方法就是去各大开发者平台申请id之后看官方文档直接集成,当然也有偷懒的方法.类似博主,使用的是ShareSDK进行第三方登录,当然也可以使用友盟进行第三方登录.第三方登录主要是通过拉取第三方的授权,获得第三方平台的用户ID,作为参数上传到自己的服务器中,换取令牌,达到登录的目的.

1.申请appKey ,去要集成的各大开发者平台申请

2.导入ShareSDK

3.配置URL Schemes

在这里配置URL Schemes,identifier随便填,能区别其他应用即可,URL Schemes按开发者平台要求填,通常是简称+appKey





4.添加依赖库

必须添加的依赖库如下:

libicucore.dylib

libz.dylib

libstdc++.dylib

JavaScriptCore.framework

以下依赖库根据社交平台添加

新浪微博SDK依赖库

ImageIO.framework

QQ好友和QQ空间SDK依赖库(新注册腾讯开放平台帐号只支持SSO授权,只是老开发者才可以使用网页授权)

libstdc++.dylib

libsqlite3.dylib

5.在didFinishLaunch中注册appKey,初始化

/**ShareSDK 集成*/

[ShareSDK registerApp:@"appKey"];

#pragma mark-------

[ShareSDK connectSinaWeiboWithAppKey:@"appKey"

appSecret:@"APPSecret"

redirectUri:@"http://www.baidu.com"];

[ShareSDK connectQZoneWithAppKey:@"appKey"

appSecret:@"APPSecret"

qqApiInterfaceCls:[QQApiInterface class]

tencentOAuthCls:[TencentOAuth class]];

[WXApi registerApp:APP_ID];

[ShareSDK connectWeChatWithAppId:APP_ID //微信APPID

appSecret:APP_SECRET //微信APPSecret

wechatCls:[WXApi class]];

6.在openURL中回调

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation

{

return [ShareSDK handleOpenURL:url

sourceApplication:sourceApplication

annotation:annotation

wxDelegate:self];

}

7. 在登录界面进行登录

#pragma mark -Weixin 登录

- (void)loginWeixinBtnClicked {

[ShareSDK getUserInfoWithType:ShareTypeWeixiTimeline

authOptions:_authOptions

result:^(BOOL result, id<ISSPlatformUser> userInfo, id<ICMErrorInfo> error) {

if (result)

{

//将从第三方平台获取的参数上传服务器

NSDictionary *dict = @{@"udid" : [userInfo uid],

@"client" : YORequest_Client

};

[self startTestLoginWithDictionary:dict withIsFrom:YES];

}

完成

PS:适配iOS9.0
http://wiki.mob.com/ios9-对sharesdk的影响(适配ios-9必读)/
在提交审核的时候如果没有安装qq微信,提示未安装qq微信会被拒绝,使用如下方法即可

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: