遇到的问题:当网址包含汉字时,可以分享成功,但只能显示一张大图,不能响应点击事件;

1\首先获取shareSDK的AppKey,进入后台创建应用,获取AppKey

2\cocoapods导入shareSDK

# 主模块(必须)
pod 'ShareSDK3'
# Mob 公共库(必须) 如果同时集成SMSSDK iOS2.0:可看此注意事项:http://bbs.mob.com/thread-20051-1-1.html
pod 'MOBFoundation'
# UI模块(非必须,需要用到ShareSDK提供的分享菜单栏和分享编辑页面需要以下1行)
pod 'ShareSDK3/ShareSDKUI'
# 平台SDK模块(对照一下平台,需要的加上。如果只需要QQ、微信、新浪微博,只需要以下3行)
pod 'ShareSDK3/ShareSDKPlatforms/QQ'
pod 'ShareSDK3/ShareSDKPlatforms/SinaWeibo'
pod 'ShareSDK3/ShareSDKPlatforms/WeChat'
pod 'ShareSDK3/ShareSDKPlatforms/RenRen'
pod 'ShareSDK3/ShareSDKPlatforms/AliPaySocial'
pod 'ShareSDK3/ShareSDKPlatforms/Kakao'

三、快速集成

第一步:设置ShareSDK的Appkey并初始化对应的第三方社交平台 打开*AppDelegate.m(*代表你的工程名字)导入头文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16

#import <ShareSDK/ShareSDK.h>
#import <ShareSDKConnector/ShareSDKConnector.h>
//腾讯开放平台(对应QQ和QQ空间)SDK头文件
#import <TencentOpenAPI/TencentOAuth.h>
#import <TencentOpenAPI/QQApiInterface.h>
//微信SDK头文件
#import "WXApi.h"
//新浪微博SDK头文件
#import "WeiboSDK.h"
//新浪微博SDK需要在项目Build Settings中的Other Linker Flags添加"-ObjC"
//人人SDK头文件
#import <RennSDK/RennSDK.h>

在- (BOOL)application: didFinishLaunchingWithOptions:方法中调用registerApp方法来初始化SDK并且初始化第三方平台(各社交平台申请APPkey 的网址及申请流程汇总)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80

- (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:@"f29df781abdd4f49beca5a2 z194676ca4"
                                             authType:SSDKAuthTypeBoth];
                    break;
                   case SSDKPlatformTypeGooglePlus:
                      [appInfo SSDKSetupGooglePlusByClientID:@"232554794995.apps.googleusercontent.com"
                                                clientSecret:@"PEdFgtrMw97aCvf0joQj7EMk"
                                                 redirectUri:@"http://localhost"
                                                    authType:SSDKAuthTypeBoth];
                    break;
                   default:
                    break;
              }
          }];
return YES;
}
(注意:每一个case对应一个break不要忘记填写,不然很可能有不必要的错误,新浪微博的外部库如果不要客户端分享或者不需要加关注微博的功能可以不添加,否则要添加,QQ,微信,google+这些外部库文件必须要加)

第二步:添加实现代码 打开需要集成分享功能的视图

自己布置UI,在button点击事件中执行如下代码

UIImage *image = [UIImage imageNamed:@"60"];

NSMutableDictionary *shareParams = [NSMutableDictionary dictionary];

[shareParams SSDKSetupShareParamsByText:@"分享内容"

images:image

url:[NSURL URLWithString:@"http://blog.sina.com.cn/s/blog_6b1e4a060102w9te.html"]

title:@"分享标题"

type:SSDKContentTypeAuto];

[ShareSDK share:SSDKPlatformSubTypeWechatTimeline parameters:shareParams onStateChanged:^(SSDKResponseState state, NSDictionary *userData, SSDKContentEntity *contentEntity, NSError *error) {

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;

}

}];

转载于:https://www.cnblogs.com/making/p/5598648.html

分享ShareSDK相关推荐

  1. android sdk引入 微信分享_Android分享 ShareSDK微信分享详解

    本文转载自: http://www.it165.net/pro/html/201508/50793.html (只作转载, 不代表本站和博主同意文中观点或证实文中信息) 目前市面上大大小小的软件,几乎 ...

  2. Android第三方集成之一键分享ShareSDK的使用eclipse篇 #CSDN博文精选# #IT# #第三方集成# #安卓#

    大家好,小C将继续与你们见面,带来精选的CSDN博文~ 在这里,你将收获: 将系统化学习理论运用于实践,系统学习IT技术 学习内容涵盖数据库.软件测试.主流框架.领域驱动设计和第三方生态等,离全栈工程 ...

  3. 全网最详细的Android实现三方分享ShareSDK分享功能

    当用户对这个软件有好感的时候,就会推荐给自己的好友.还有一种就是类似饿了么的,买完东西后可以分销你的红包给其他人,当然shareSDK的功能不仅如此,今天我们就来快速集成一下. 一.mob中创建应用, ...

  4. 调用微博分享sharesdk Unable to start activity ComponentInfo

    今天做Android ,在第三方应用调用微博分享接口时提示: Unable to start activity ComponentInfo{com.junx/cn.sharesdk.framework ...

  5. 分享——shareSDK

    shareSDK的开发文档写得很清楚了,但是我想把我遇到的,需要多注意的地方写下来. 开发中用到的网址: 分享集成文档. ShareSDK常见问题汇总. 各社交平台申请APPkey网址及申请流程. 自 ...

  6. ShareSDK移动APP社会化分享组件

    ShareSDK简介 ShareSDK是为iOS.Android.WP8的APP提供社会化分享功能的一个组件,开发者只需10分钟即可集成到自己的APP中,它不仅支持如QQ.微信.新浪微博.腾讯微博.开 ...

  7. ShareSDK接入实现微信分享功能(转)

    ShareSDK接入实现微信分享功能 首先需要去Mob官网(http://www.mob.com/)下载shareSDK For Unity3d 下载完成,解压,将以下plugins文件夹移入Unit ...

  8. ShareSDK Android 第三方平台分享参数说明

     虽然ShareSDK尽可能屏蔽了不同社交平台间接口api差异,但是分享接口需要传递的差异依然会因平台而异,本文将以列表的形式展示不同平台的分享参数(ShareParams)的字段要求,以方便开发者使 ...

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

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

最新文章

  1. NodeJs开发微信公众号(一)
  2. bin文件转换成html,怎么样把BIN文件转换成ISO文件
  3. leetcode 954. Array of Doubled Pairs | 954. 二倍数对数组(Java)
  4. 收集一些 有效的算法
  5. OC开发笔记之第二篇
  6. 浪潮世科和浪潮软件什么关系_社交图形浪潮
  7. ES5常用的组合继承及原型链理解
  8. iterator接口
  9. 三菱plc可以用c语言编程吗,三菱PLC高手进-c语言编程题库
  10. unity 2d文字跟随主角移动_用Unity制作GalGame/视觉小说游戏的模型素材与插件推荐...
  11. Homography拓展(含与平面法向量相关的情况)
  12. 三种迷宫算法(深度优先、随机Prim、递归分割)
  13. 高斯日记python实现
  14. 最公正海贼王实力排行TOP50!
  15. html和css中盒子大小,CSS大小设置实例——盒子模型
  16. Markdown文档数学公式的使用
  17. Win10多用户同时远程桌面,并各自操作互不干扰
  18. 传说中的b站mac客户端(支持M1芯片、适配Big Sur)-bilibili mac客户端
  19. 为什么有些 985、211 的本科学生即使在大学里混得很水,在找工作时学历却那么管用?...
  20. 编译极路由(HC5x61)固件

热门文章

  1. 快起床刷题去,别人把你offer拿走啦
  2. 使用feign调用注解在eureka上的微服务,简单学会微服务
  3. 2022-2028年中国钢铁智能制造产业竞争现状及发展趋势分析报告
  4. 使用 alpine 打包镜像注意事项
  5. Git 常用操作(4)- 更改提交
  6. SpringCloud Alibaba微服务实战(七) - 路由网关(Gateway)全局过滤
  7. 机器翻译评测——BLEU算法详解 (新增 在线计算BLEU分值)评估
  8. 使用TENSORRT和NVIDIA-DOCKER部署深部神经网络
  9. Python:Resquest模块
  10. python 判断字符串是否为空,字典是否为空,列表是否为空,元组是否为空的方法