1.首先要先注册自己的appkey在shareSDK官网里面

2.下载shareSDK 文档,可以根据需要下载自己需要的

如图

3.将下载好的shareSDK 解压后加入工程里面

4.添加依赖库

//必须添加的库

必须添加的依赖库如下(Xcode 7 下 .dylib库后缀名更改为.tbd):

libicucore.dylib

libz.dylib

libstdc++.dylib

JavaScriptCore.framework

新浪微博SDK依赖库

ImageIO.framework

libsqlite3.dylib

QQ好友和QQ空间SDK依赖库

libsqlite3.dylib

微信SDK依赖库

libsqlite3.dylib

短信和邮件需要依赖库

MessageUI.framework

5.打开*AppDelegate.m

导入需要的头文件 如图

6.在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions里面添加代码

  • (BOOL)application:(UIApplication )application didFinishLaunchingWithOptions:(NSDictionary )launchOptions

    {

    /

    • 设置ShareSDK的appKey,如果尚未在ShareSDK官网注册过App,请移步到http://mob.com/login 登录后台进行应用注册

    • 在将生成的AppKey传入到此方法中。

    • 方法中的第二个第三个参数为需要连接社交平台SDK时触发,

    • 在此事件中写入连接代码。第四个参数则为配置本地社交平台时触发,根据返回的平台类型来配置平台信息。

    • 如果您使用的时服务端托管平台信息时,第二、四项参数可以传入nil,第三项参数则根据服务端托管平台来决定要连接的社交SDK。

      */

      [ShareSDK registerApp:@"iosv1101"

      activePlatforms:@[

      @(SSDKPlatformTypeSinaWeibo),

      @(SSDKPlatformTypeMail),

      @(SSDKPlatformTypeSMS),

      @(SSDKPlatformTypeCopy),

      @(SSDKPlatformTypeWechat),

      @(SSDKPlatformTypeQQ),

      @(SSDKPlatformTypeRenren),

      @(SSDKPlatformTypeGooglePlus)]

      onImport:^(SSDKPlatformType platformType)

      {

      switch (platformType)

      {

      case SSDKPlatformTypeWechat:

      [ShareSDKConnector connectWeChat:[WXApi class]];

      break;

      case SSDKPlatformTypeQQ:

      [ShareSDKConnector connectQQ:[QQApiInterface class] tencentOAuthClass:[TencentOAuth class]];

      break;

      case SSDKPlatformTypeSinaWeibo:

      [ShareSDKConnector connectWeibo:[WeiboSDK class]];

      break;

      case SSDKPlatformTypeRenren:

      [ShareSDKConnector connectRenren:[RennClient class]];

      break;

      default:

      break;

      }

      }

      onConfiguration:^(SSDKPlatformType platformType, NSMutableDictionary *appInfo)

      {

        switch (platformType)
      {
      case SSDKPlatformTypeSinaWeibo:
      //设置新浪微博应用信息,其中authType设置为使用SSO+Web形式授权
      [appInfo SSDKSetupSinaWeiboByAppKey:@"568898243"
      appSecret:@"38a4f8204cc784f81f9f0daaf31e02e3"
      redirectUri:@"http://www.sharesdk.cn"
      authType:SSDKAuthTypeBoth];
      break;
      case SSDKPlatformTypeWechat:
      [appInfo SSDKSetupWeChatByAppId:@"wx4868b35061f87885"
      appSecret:@"64020361b8ec4c99936c0e3999a9f249"];
      break;
      case SSDKPlatformTypeQQ:
      [appInfo SSDKSetupQQByAppId:@"100371282"
      appKey:@"aed9b0303e3ed1e27bae87c33761161d"
      authType:SSDKAuthTypeBoth];
      break;
      case SSDKPlatformTypeRenren:
      [appInfo SSDKSetupRenRenByAppId:@"226427"
      appKey:@"fc5b8aed373c4c27a05b712acba0f8c3"
      secretKey:@"f29df781abdd4f49beca5a2194676ca4"
      authType:SSDKAuthTypeBoth];
      break;
      case SSDKPlatformTypeGooglePlus:
      [appInfo SSDKSetupGooglePlusByClientID:@"232554794995.apps.googleusercontent.com"
      clientSecret:@"PEdFgtrMw97aCvf0joQj7EMk"
      redirectUri:@"http://localhost"];
      break;
      default:
      break;
      }

      }];

      return YES;

      }

7.在你点击方法里面加入代码

//1、创建分享参数

NSArray* imageArray = @[[UIImage imageNamed:@"shareImg.png"]];

(注意:图片必须要在Xcode左边目录里面,名称必须要传正确,如果要分享网络图片,可以这样传iamge参数 images:@[@"http://mob.com/Assets/images/logo.png?v=20150320"])

if (imageArray) {

    NSMutableDictionary *shareParams = [NSMutableDictionary dictionary];
[shareParams SSDKSetupShareParamsByText:@"分享内容"
images:imageArray
url:[NSURL URLWithString:@"http://mob.com"]
title:@"分享标题"
type:SSDKContentTypeAuto];

//2、分享(可以弹出我们的分享菜单和编辑界面)

[ShareSDK showShareActionSheet:nil //要显示菜单的视图, iPad版中此参数作为弹出菜单的参照视图,只有传这个才可以弹出我们的分享菜单,可以传分享的按钮对象或者自己创建小的view 对象,iPhone可以传nil不会影响

items:nil

shareParams:shareParams

onShareStateChanged:^(SSDKResponseState state, SSDKPlatformType platformType, NSDictionary *userData, SSDKContentEntity *contentEntity, NSError *error, BOOL end) {

                   switch (state) {
case SSDKResponseStateSuccess:
{
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"分享成功"
message:nil
delegate:nil
cancelButtonTitle:@"确定"
otherButtonTitles:nil];
[alertView show];
break;
}
case SSDKResponseStateFail:
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"分享失败"
message:[NSString stringWithFormat:@"%@",error]
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil, nil];
[alert show];
break;
}
default:
break;
}
}
];}

8.SSO授权登录

注。。。。。。。QQ的SSO授权的 URL Schemes 的 appkey 为16进制;微博分享需要在开发者账号上面申请应用,拿到ID,在微博开放平台上面相应地址填上就可以申请了。

你想要在哪个应用上面分享,你就要去哪个应用的开发平台申请应用,拿到相应的appkey 和 appSecret.

完毕——————。

用ShareSDK 进行第三方分享的更多相关文章

  1. android shareSDK实现第三方分享

    一.  http://www.mob.com/  在mob官网注册账号,获取ShareSDK的appkey,下载shareSDK并解压. 二.进入ShareSDK解压目录,打开“Share SDK f ...

  2. iOS第三方分享-ShareSDK

    网址链接:http://mob.com/Download/detail?type=1&plat=2 由于新版的简单分享很多功能都有,而且打包后体积比全版本的少了几M所以在这里用这个 1.在官网 ...

  3. iOS - ShareSDK第三方分享(图文和视频)和登录

    由于近期工作需要自己抽时间搞了一下第三方分享,这里使用的是shareSDK的第三方,在使用的过程中有一些心得和体会,特在此和大家分享一下~ 1.在经过将近一周时间的开发,终于搞定ios分享了. 2.由 ...

  4. 使用ShareSDK完成第三方(QQ、微信、微博)登录和分享

    这几天遇到一个需求:做第三方登录和分享.遇到了一些坑,把整个过程整理记录下来,方便他人,同时也捋一下思路. 当时考虑过把每个平台的SDK下载下来,一个一个弄,一番取舍后决定还是用ShareSDK.这里 ...

  5. 在Android Studio中使用shareSDK进行社会化分享(图文教程)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  6. ios第三方分享到qq、微信、人人网、微博总结

    我们开发出来的APP通常要通过第三方分享到其他社交平台,如qq.微博微信 等.通过分享可以提高APP的传播效率,增加APP的曝光率,因此也算是APP功能 里的标配了吧.目前常用的第三方分享途径有qq. ...

  7. android第三方分享之友盟社会化组件

    前言 现在几乎所有的app都带有分享功能,第一为了更好地推广自己的产品,第二作为使用者也能及时的把自己觉得好的文章,话题,app分享到社交平台供大家一起学习和使用.开发中虽然android系统自带分享 ...

  8. 利用新版ShareSDK进行手动分享(自定义分享界面)

    之前有用过Share SDK进行快捷分享,可是官方demo中的快捷分享的界面已经设置死了,而公司的产品又设计了自己的分享界面,这就需要我进行手动分享了.当前ShareSDK版本是2.5.4. 看了一堆 ...

  9. iOS开发之第三方分享QQ分享,史上最新最全第三方分享QQ方式实现

    本文章源码地址: https://github.com/zhonggaorong/QQLoginDemo 项目搭建参考:  (包含QQ登录源码下载 . QQ sdk集成) http://blog.cs ...

随机推荐

  1. rewrite

    http://www.iis.net/downloads/microsoft/url-rewrite

  2. php下载远程文件方法~

    直接上代码: getFile("http://easyread.ph.126.net/N8gDl6ayo5wLgKbgT21NZQ==/7917056565549478184.jpg&quo ...

  3. set使用方法

    set 添加一个无序的,用set方法,访问速度快,天生解决了重复问题 1.difference 指定某个元素从原来set取出,并生成新的set #difference a = set(["a ...

  4. CSS中不定宽块状元素的水平居中显示

    CSS中不定宽块状元素的水平居中显示 慕课网上的HTML/CSS教程 http://www.imooc.com/view/9 其中有三种方法 第一种是加入table标签 任务是实现div元素的水平居中 ...

  5. linux 比较两个文件是否一致

    diff source target 如果一致不弹出任何信息

  6. Visual Studio 常用快捷键备忘

    在代码中插入书签 用途 操作   vs2013 快速在自定义的不同代码位置跳转 首先点击: 编辑=>书签=>启用书签 然后再在代码编辑窗口 ctrl+k, k (取消书签,再按一次 ctr ...

  7. C# 中的委托和事件

    觉得这篇文章写的非常好,大神之作,由简入繁,对我这种初学者来说帮忙很大,特此留存下. 摘自:http://tracefact.net/CSharp-Programming/Delegates-and- ...

  8. Gson解析纯Json数组

    [ { "type": "123", "value": 123 }, { "type": "234" ...

  9. App开发流程之加密工具类

    科技优家 2016-09-08 18:10 从这篇记录开始,记录的都算是干货了,都是一些编程日常的积累. 我建议先将基础的工具加入项目,后续的开发效率会呈指数增长.如果在专注功能开发过程中,才发现缺少 ...

  10. 订货(bzoj 2424)

    Description 某公司估计市场在第i个月对某产品的需求量为Ui,已知在第i月该产品的订货单价为di,上个月月底未销完的单位产品要付存贮费用m,假定第一月月初的库存量为零,第n月月底的库存量也为 ...