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. Eclipse最常用快捷键

    常用快捷键: Ctrl + 1 :快速修复(当编辑器出现红色波浪线时使用此快捷键能快速弹出提示) Ctrl + d :删除当前光标所在的行 Ctrl + z :撤销上一步的操作 Ctrl + y :重 ...

  2. remove mysql

    apt-get --purge remove mysql-server mysql-client mysql-common apt-get autoremove rm -rf /etc/mysql r ...

  3. CDR VBA将字母改为大写

    ActiveShape.Text.FontProperties.Uppercase = cdrSmallCapsFontCase

  4. 【webGL】threejs常用的api

    /*** 场景(scene) ***/ var scene = new THREE.Scene(); // 创建场景 scene.add(x); // 插入场景 /*** 相机(camera) *** ...

  5. ember.js路由无效的解决思路

    进入今天的问题,就是route ember中就一个html,单页面程序(spa),所以页面的跳转,也可以叫做页面的路由,其实就是在这一个html中,不断的进行html的插入和删除了(个人理解) emb ...

  6. RecyclerView的使用之多种Item加载布局

    精益求精,为了更加透彻熟练得掌握,本文再次给大家介石介绍下如何利用RecyclerView实现多Item布局的加载,多Item布局的加载的意思就是在开发过程中List的每一项可能根据需求的不同会加载不 ...

  7. Json数组追加数据

    背景:在做一个购物车的时候,点击第一个商品,然后存入一个json数组中,点击第二个商品的时候,又继续在json数组中追加,代码如下: <script type="text/javasc ...

  8. October 27th Week 44th Thursday 2016

    The art of being wise is the art of knowing what to overlook. 智慧之道在于懂得该忽略什么. Always do your best. Wh ...

  9. Counter Mode ( CTR )

    Encryption Decryption

  10. 图文相关性 flickr数据实验结论_1

    初始化的选取很重要,random_uniform的效果远远好于random_normal, 是否有bias对效果影响很小 红色是random_uniform初始化,对比random_normal初始化 ...