我的shareSDK集成新浪微博
使用文档地址:http://wiki.mob.com/快速集成指南/
1. 集成新浪微博。
第一步:按照开发文档上说的将解压的ShareSDK拖入到工程;
第二步:添加依赖库文件:
SystemConfiguration.framework ,
QuartzCore.framework ,
CoreTelephony.framework ,
libicucore.dylib ,
libz.1.2.5.dylib ,
Security.framework
以下依赖库可根据您支持的社交平台情况进行添加
MessageUI.framework 支持短信和邮件分享必备库
libstdc++.dylib QQ好友和QQ空间SSO必备库,如不需要SSO授权可不添加。(最新注册QQ互联开发者帐号只支持SSO授权,只是老开发者才可以使用网页授权)
libsqlite3.dylib QQ好友和QQ空间SSO必备库,如不需要SSO授权可不添加。(最新注册QQ互联开发者帐号只支持SSO授权,只是老开发者才可以使用网页授权)
CoreMotion.framework 如果不使用Google+可以不加
CoreLocation.framework 如果不使用Google+可以不加
MediaPlayer.framework 如果不使用Google+可以不加
CoreText.framework 如果不使用Google+可以不加
AssetsLibrary.framework 如果不使用Google+可以不加
AddressBook.framework 如果不使用Google+可以不加
Social.framework 腾讯微博SDK依赖库
Accounts.framework 腾讯微博SDK依赖库
注意:在你不使用短信等的时候,你就要将shareSDK中与之相关的文档进行删除,如果不删除那么就请导入相应的类库。否则会出现问题,这是因为有的第三方平台的sdk暂时还不支持64位编译。
第三步:在AppDelegate中,到入头文件ShareSDK.h。
第四步:在- (BOOL)application: didFinishLaunchingWithOptions:方法中调用shareSDK的方法,这里是新浪微博。所以就导入了如下图,其中registerApp:方法中为在使用shareSDK的时候申请的AppKey, connectSinaWeiboWithAppKey:appSecret:redireUri:weiboSDKCls中,connectSinaWeiboWithAppKey为您在新浪微博申请应用的时候的AppKey, appSecret为新浪微博的App Seccret, redireUri为授权的回调页,weiboSDKCls照着这个就可以了。
第五步:在需要使用的地方,这里实在ViewController中直接创建了一个button进行使用的,需要在ViewController.m中导入
#import <ShareSDK/ShareSDK.h>
#import <TencentOpenAPI/TencentOAuth.h>
#import <TencentOpenAPI/TencentOAuth.h>
#import "WXApi.h"
#import "WeiboApi.h"
#import "WeiboSDK.h"
这些头文件,然后再button的点击事件中添加
NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"ShareSDK" ofType:@"png"];
//构造分享内容
id<ISSContent> publishContent = [ShareSDK content:@"分享内容"
defaultContent:@"测试一下"
image:[ShareSDK imageWithPath:imagePath]
title:@"ShareSDK"
url:@"http://www.mob.com"
description:@"这是一条测试信息"
mediaType:SSPublishContentMediaTypeNews];
//创建弹出菜单容器
id<ISSContainer> container = [ShareSDK container];
[container setIPadContainerWithView:sender arrowDirect:UIPopoverArrowDirectionUp];
//弹出分享菜单
[ShareSDK showShareActionSheet:container
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(NSLocalizedString(@"TEXT_ShARE_SUC", @"分享成功"));
}
else if (state == SSResponseStateFail)
{
NSLog(NSLocalizedString(@"TEXT_ShARE_FAI", @"分享失败,错误码:%d,错误描述:%@"), [error errorCode], [error errorDescription]);
}
}];
这个时候运行,我的出现了一个问题,访问出错了,新浪微博error:redirect_uri_mismatch,这个时候是因为笔者将新浪微博的回调页写错了,嘿嘿,犯傻了。好了,成功了之后当你使用新浪微博分享了内容之后,在控制台就会输出如下图所示内容:text_share_suc