iOS- 无处不在,详解iOS集成第三方登录(SSO授权登录<无需密码>)

1.前言 

不多说,第三登录无处不在!必备技能,今天以新浪微博为例。

这是上次写的iOS第三方社交分享:http://www.cnblogs.com/qingche/p/3727559.html

可以和今天的一起集成使用。

2.集成前的准备工作  

2.1.去ShareSDK(现为Mob)注册帐号,下载SDK,然后添加自己的应用后得到AppKey  

下载地址:http://sharesdk.cn/Download

2.2.申请第三方登录的Appkey  

例如: 新浪微博、腾讯微博、QQ、微信、豆瓣应用、人人网、QQ空间

去各大社交网站的开发者平台,进行注册,添加应用即可得到。

获取如下:

2.3.前往Parse用户注册并下载SDK。

3.集成shareSDK  

3.1.导SDK  

选中工程项目进入“Build Phases”在“Link Binary With Libraries”中点击“+”号,按照ShareSDK的集成文档与Parse的文档说明把需要引入的库加入到项目中

3.2.注册ShareSDK  

3.3.添加要集成的第三方登录平台  

注意: 新浪微博需要提供回调地址才行

回调地址去新浪开发者平台获取


1

2

3

[ShareSDK connectSinaWeiboWithAppKey:@"3819780424"

                           appSecret:@"6ce8dba1a8baa6803b6e3824518422b3"

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


1

<span style="color: #ff0000;">redirectUri 要和开发平台的回调页面相同</span>

3.4. 、在 - (BOOL)application: didFinishLaunchingWithOptions:注册ShareSDK、添加集成平台、注册Parse  

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

    

    

    

    

    // Override point for customization after application launch.

    

    [ShareSDK registerApp:@"288fe15ac67e"];     //参数为ShareSDK官网中添加应用后得到的AppKey

    

    //Parse Key

    [Parse setApplicationId:@"gKROXKemyAYT1JEQPwFjcuNRL7qPLguXpYWS1qb9"

                  clientKey:@"U48G8pla1trx8voPeOpH8Hts9QN475g27STuxuWo"];

    

    ///新浪微博:

    //App Key:3819780424

    //App Secret:6ce8dba1a8baa6803b6e3824518422b3

    //腾讯微博:

    //App key:2620460989

    //App secret:58c55f572d5ae35e0c355f4c0ee11283

    

    

    //分享内容URL

    

    

    [ShareSDK connectSinaWeiboWithAppKey:@"3819780424"

                               appSecret:@"6ce8dba1a8baa6803b6e3824518422b3"

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

    

  

    //    //新浪微博

    //    //App Key:801498670

    //    //App Secret:882c5581fa08e4068e9b920b65dac4ac

    //

    //    //添加腾讯微博应用

    //    [ShareSDK connectTencentWeiboWithAppKey:@"801307650"

    //                                  appSecret:@"ae36f4ee3946e1cbb98d6965b0b2ff5c"

    //                                redirectUri:@"http://www.sharesdk.cn"];

    

    //    //添加豆瓣应用

    //    [ShareSDK connectDoubanWithAppKey:@"07d08fbfc1210e931771af3f43632bb9"

    //                            appSecret:@"e32896161e72be91"

    //                          redirectUri:@"http://dev.kumoway.com/braininference/infos.php"];

    //

    //    //添加人人网应用

    //    [ShareSDK connectRenRenWithAppKey:@"fc5b8aed373c4c27a05b712acba0f8c3"

    //                            appSecret:@"f29df781abdd4f49beca5a2194676ca4"];

    //

    //

    //

    //    //添加Facebook应用

    //    [ShareSDK connectFacebookWithAppKey:@"107704292745179"

    //                              appSecret:@"38053202e1a5fe26c80c753071f0b573"];

    return YES;

}

其中传入ShareSDK的参数则是之前创建应用的AppKey,而Parse的ApplicationId和clientKey可在应用信息面板中获取。

3.5.实现SSO授权(SSO授权登录<无需用户输入密码登录>)  

注意:每个第三方客户端的SSO授权方法不同:

详情可查看

http://wiki.sharesdk.cn/iOS配置SSO授权


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

//(新浪微博)例:在AppDelegate添加2个方法:

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url

{

    return [ShareSDK handleOpenURL:url wxDelegate:nil];

}

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

{

    return [ShareSDK handleOpenURL:url

                 sourceApplication:sourceApplication

                        annotation:annotation

                        wxDelegate:nil];

}

打开*-Info.plist(*代表你的工程名字)。找到URL types配置项(如果没有则新增),展开URL types – URL Schemes,在URL Schemes下分别各新增一项用于新浪微博的Scheme(如果不添加则会导致法返回应用)。其填写格式为:wb+appKey(你在新浪微博申请的AppKey), 如:wb2279784657。如图所示:

3.6.拖一个按钮,在按钮的点击事件实现第三方登录  

3.7.注册登录成功后,可以登录Parse 查看数据已经成功写入,如图:  

3.8.最后来一个注销按钮即可,返回登录界面  


1

2

3

4

5

6

- (void)logoutButtonClickHandler:(id)sender

{

    [ShareSDK cancelAuthWithType:ShareTypeSinaWeibo];

    

    [self.navigationController popViewControllerAnimated:NO];

}

作者: 清澈Saup
出处:http://www.cnblogs.com/qingche/
本文版权归作者和博客园共有,欢迎转载,但必须保留此段声明,且在文章页面明显位置给出原文连接。

iOS- 无处不在,详解iOS集成第三方登录(SSO授权登录<无需密码>)

时间: 2024-08-06 19:49:19

iOS- 无处不在,详解iOS集成第三方登录(SSO授权登录<无需密码>)的相关文章

iOS无处不在详解iOS集成第三方登录(SSO授权登录无需密码)

链接地址:http://www.it165.net/pro/html/201408/18884.html 1.前言 不多说,第三登录无处不在!必备技能,今天以新浪微博为例. 这是上次写的iOS第三方社交分享:http://www.cnblogs.com/qingche/p/3727559.html 可以和今天的一起集成使用. 2.集成前的准备工作 2.1.去ShareSDK(现为Mob)注册帐号,下载SDK,然后添加自己的应用后得到AppKey 下载地址:http://sharesdk.cn/D

iOS教程:详解iOS多图下载的缓存机制

ios教程,ios的干货一直来不及给大家分享,小编也是一直在忙啊!今天给大家献上ios:详解iOS多图下载的缓存机制 1. 需求点是什么? 这里所说的多图下载,就是要在tableview的每一个cell里显示一张图片,而且这些图片都需要从网上下载. 2. 容易遇到的问题 如果不知道或不使用异步操作和缓存机制,那么写出来的代码很可能会是这样: cell.textLabel.text = app.name; cell.detailTextLabel.text = app.download;NSDat

无处不在,详解iOS集成第三方登录(SSO授权登录&lt;无需密码&gt;)

1.前言 不多说,第三登录无处不在!必备技能,今天以新浪微博为例. 这是上次写的iOS第三方社交分享:http://www.cnblogs.com/qingche/p/3727559.html 可以和今天的一起集成使用. 2.集成前的准备工作 2.1.去ShareSDK(现为Mob)注册帐号,下载SDK,然后添加自己的应用后得到AppKey 下载地址:http://sharesdk.cn/Download 2.2.申请第三方登录的Appkey 例如: 新浪微博.腾讯微博.QQ.微信.豆瓣应用.人

iOS疯狂详解之第三方微信授权登录的iOS代码分析

微信已经深入到每一个APP的缝隙,最常用的莫过分享和登录了,接下来就以代码的形式来展开微信登录的相关说明,至于原理级别的oauth2.0认证体系请参考微信开放平台的相关说明和图示 https://open.weixin.qq.com/ 微信登录授权开发 1,到微信开发平台注册相关APP,现在是等待审核成功后才能获取到对应的key和secret:获取成功后需要单独申请开通登录和支付接口,如图 2,和QQ类似,需要填写Url Schemes,如demo中的wxd930ea5d5a258f4f ,然后

iOS疯狂详解之CocoaPods做iOS程序包的依赖管理

每种语言发展到一个阶段,就会出现相应的依赖管理工具, 或者是中央代码仓库.比如 Java: maven,Ivy Ruby: gems Python: pip, easy_install Nodejs: npm 随着iOS开发者的增多,业界也出现了为iOS程序提供依赖管理的工具,这个工具叫:CocoaPods. CocoaPods简介 CocoaPods是一个负责管理iOS项目中第三方开源代码的工具.CocoaPods项目的源码在Github上管理.该项目开始于2011年8月12日,经过一年多的发

iOS插件详解之----CLangFormat(代码格式化管理插件)(2016.1.12王彬)

iOS插件详解之----CLangFormat(代码格式化管理)(2016.1.12王彬) 虽然在项目创建和团队组建的初期,我们就把公共约定以及一些规范定下来了,并且由于我们的代码是通过Git来做版本控制的,web上直接就支持Markdown格式的readme文件,可以随时看到最新的版本,但是这种规范只能依靠个人的意识,或者通过代码Review来解决,而且做代码Review的时候,你也不好意思总是写上一堆诸如“这里要加个空格”.“那里要加上换行”的评论吧?如果不管,久而久之,会因为每个人的习惯不

iOS疯狂详解之开源库

youtube下载神器:https://github.com/rg3/youtube-dl vim插件:https://github.com/Valloric/YouCompleteMe vim插件配置:https://github.com/spf13/spf13-vim ----------------Mac完整项目---------- 电台:https://github.com/myoula/sostart ----------------iOS完整项目---------------- 1,

【iOS开发必收藏】详解iOS应用程序内使用IAP/StoreKit付费、沙盒(SandBox)测试、创建测试账号流程!【2012-12-11日更新获取”产品付费数量等于0的问题”】

转的别人的 看到很多童鞋问到,为什么每次都返回数量等于0?? 其实有童鞋已经找到原因了,原因是你在 ItunesConnect 里的 “Contracts, Tax, and Banking”没有完成设置账户信息. 确定 ItunesConnect 里 “Contracts, Tax, and Banking”的状态,如下图所示,即可: 这里也是由于Himi疏忽的原因没有说明,这里先给童鞋们带来的麻烦,致以歉意. //——2012-6-25日更新iap恢复 看到很多童鞋说让Himi讲解如何恢复i

iOS疯狂详解之录制音频转换成Mp3

使用第三方 lame ,Mp3音频编码器. 使用 AVAudioRecorder 进行音频录制之前,进行参数设置: NSString *recordTemporaryPathString = [NSString stringWithFormat:@"%@/temporary",self.audioTemporarySavePath]; //LinearPCM 是iOS的一种无损编码格式,但是体积较为庞大 //录音设置 NSMutableDictionary *recordSetting