1、需要在指定官网注册App,并获取AppKey
2、下载SDK 根据所开发的平台去选择,以下以开发微信为例
3、快速集成
第一步:将下载的SDK解压后,导入到工程里,这部分就不详细说了
注意:XCode9之前版本直接拖SDk进去请务必在上述步骤中选择“Create groups for any added folders”单选按钮组。如果你选择“Create folder references for any added folders”,一个蓝色的文件夹引用将被添加到项目并且将无法找到它的资源。
第二步:添加依赖库
必须添加的依赖库如下(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
Instagram需要依赖库
- AssetsLibrary.framework
- Photos.framework
美拍需要依赖库
- AssetsLibrary.framework
第三步:设置shareSDK 的Appkey并初始化对应的第三方社交平台
在项目工程的Info.plist 中如图增加 MOBAppKey 和 MOBAppSecret 两个字段
第四步:基本上配置环境完成
导入头文件
#import <ShareSDKConnector/ShareSDKConnector.h>
//微信SDK头文件
#import "WXApi.h"
第六步:在AppDelegate 里找到
- (BOOL)application: didFinishLaunchingWithOptions:方法中调用registerActivePlatforms方法来初始化SDK并且初始化第三方平台(各社交平台申请AppKey的网址及申请流程汇总)
/**初始化ShareSDK应用
@param activePlatforms
使用的分享平台集合
@param importHandler (onImport)
导入回调处理,当某个平台的功能需要依赖原平台提供的SDK支持时,需要在此方法中对原平台SDK进行导入操作
@param configurationHandler (onConfiguration)
配置回调处理,在此方法中根据设置的platformType来填充应用配置信息
*/
[ShareSDKregisterActivePlatforms:@[
@(SSDKPlatformTypeWechat),
]
onImport:^(SSDKPlatformType
platformType)
{
switch
(platformType)
{
caseSSDKPlatformTypeWechat:
[ShareSDKConnectorconnectWeChat:[WXApiclass]];
break;
default:
break;
}
}
onConfiguration:^(SSDKPlatformType
platformType, NSMutableDictionary
*appInfo)
{
switch
(platformType)
{
caseSSDKPlatformTypeSinaWeibo:
caseSSDKPlatformTypeWechat:
[appInfoSSDKSetupWeChatByAppId:@"wx2e6d2fa4ff******"
appSecret:@"3891815d5***************"];
break;
default:
break;
}
}];
第七步:再此封装ShareSDKMethod方法,可自定义方法,在Controller调用
[ShareSDKMethodShareTextActionWithTitle:decodedString0ShareContent:decodedString1ShareUlr:decodedString2ShareUlrImage:decodedString3IsCollect:NOIsReport:NOIsCollected:NOReport:nilCollect:nilResult:^(SSDKResponseState
state, SSDKPlatformType platformType,NSDictionary
*userData, SSDKContentEntity
*contentEntity, NSError *error)
{
}];
注意:最后ios9+还需要配置对应的平台的白名单
问题描述:在iOS 9下涉及到平台客户端跳转,系统会自动到项目info.plist下检测是否设置平台Scheme。对于需要配置的平台,如果没有配置,就无法正常跳转平台客户端。因此要支持客户端的分享和授权等,需要配置Scheme名单。
在info.plist中添加如下字段
<key>LSApplicationQueriesSchemes</key>
<array>
<string>weixin</string>
<string>wechat</string>
</array>