1、需要在指定官网注册App,并获取AppKey


iOS开发-shareSDK 微信好友朋友圈分享

支持微信所需的相关配置及代码 在微信开放平台(http://open.weixin.qq.com/ )注册应用并取得应用的AppID,然后打开下图位置,在URL Types中添加微信AppID  
iOS开发-shareSDK 微信好友朋友圈分享

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 两个字段
在 MOBAppKey中 设置ShareSDK的appKey,如果尚未在ShareSDK官网注册过App,请移步到登录后台进行应用注册  也可以点击链接看里面的操作步骤。
iOS开发-shareSDK 微信好友朋友圈分享

第四步:基本上配置环境完成
导入头文件
#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>

相关文章: