iOS- 三步快速集成社交化分享工具ShareSDK + iOS- 无处不在,详解iOS集成第三方登录(SSO授权登录<无需密码>)

转自:

清澈Saup(原文作者) 

链接:http://www.cnblogs.com/qingche/p/3890480.html 


1.前言  

作为现在App里必不可少的用户分享需要,社交化分享显然是我们开发app里较为常用的。
最近因为公司App有社交化分享的需要,就特此研究了会,拿出来与大家分享。
想要集成社交会分享,我们可以使用
ShareSDK - 优点功能丰富,缺点体积较大
百度分享SDK - 缺点功能相对ShareSDK较少,优点体积较小
 
这是现在较为常用的两种社交化分享工具。
使用哪一种,就看个人的app的需要来决定了。
今天我主要说的是ShareSDK的简单集成和使用。
 

2.集成前的准备工作  

2.1. 拿自己的Appkey 去下载ShareSDK  

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

2.2. 申请分享工具的Appkey  

 
例如: 新浪微博、腾讯微博、豆瓣应用、人人网、QQ空间
 
去各大社交网站的开发者平台,进行注册申请即可。
 
获取如下:
 
复制代码
    //新浪微博:

    //App Key:2258477553

    //App Secret:1e2f275afc375109e456f550fb3918e8

    //腾讯微博:

    //App key:2620460989

    //App secret:58c55f572d5ae35e0c355f4c0ee11283
复制代码
 

3.集成ShareSDK     

3.1.注册使用ShareSDK   

复制代码
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

    //注册ShareSDK

    [ShareSDK registerApp:@"1983bf0916db”];

    return YES;

}
复制代码

3.2.添加要集成的分享平台  

 

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

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

如图:

 

 

复制代码
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

{

    //注册ShareSDK

    [ShareSDK registerApp:@"1983bf0916db”];

   //添加新浪微博应用

    [ShareSDK connectSinaWeiboWithAppKey:@"2620460989"

                               appSecret:@"58c55f572d5ae35e0c355f4c0ee11283"

                             redirectUri:@"http://weibo.cn/ext/share?ru=http%3A%2F%2F16kxs.com%2Fwap%2FBook%2FShow.aspx%3Fid%3D7983%26lmid%3D0%26uid%3D0%26ups%3D0&rt=%E9%83%BD%E5%B8%82%E7%89%A7%E9%AC%BC%E4%BA%BA&st=1301645308&appkey=2620460989”];



     //添加腾讯微博应用

    [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"];

}
复制代码

3.3.弹出分享View  

a.初始化默认分享内容

复制代码
  NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"123"  ofType:@"png"];
    
 
    //构建优秀的SDK
    
    
    //构造分享内容
    id<ISSContent> publishContent = [ShareSDK content:@"iOS社交化分享测试内容。"
                                       defaultContent:@"默认分享内容,没内容时显示"
                                                image:[ShareSDK imageWithPath:imagePath]
                                                title:@"ShareSDK"
                                                  url:@"http://www.sharesdk.cn"
                                          description:@"这是一条测试信息"
                                            mediaType:SSPublishContentMediaTypeNews];
复制代码

 

b.弹出分享View

 

复制代码
 [ShareSDK showShareActionSheet:nil
                         shareList:nil
                           content:publishContent
                     statusBarTips:YES
                       authOptions:nil
                      shareOptions: nil
                            result:^(ShareType type, SSResponseState state, id<ISSPlatformShareInfo> statusInfo, id<ICMErrorInfo> error, BOOL end) {
                                if (state == SSResponseStateSuccess)
                                {
                                    NSLog(@"分享成功");
                                }
                                else if (state == SSResponseStateFail)
                                {
                                    NSLog(@"分享失败,错误码:%d,错误描述:%@", [error errorCode], [error errorDescription]);
                                }
                            }];
复制代码

 

 

效果图:

 

 

作者: 清澈Saup
出处: http://www.cnblogs.com/qingche/

本文版权归作者和博客园共有,欢迎转载,但必须保留此段声明,且在文章页面明显位置给出原文连接。




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/
本文版权归作者和博客园共有,欢迎转载,但必须保留此段声明,且在文章页面明显位置给出原文连接。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值