MobTech ShareSDK iOS端快速集成

开发工具:Xcode
集成方式:手动导入SDK或者Pod集成
SDK版本支持:SDK支持Xcode 9.1.0, iOS8.0+及以上版本

集成前准备
注册账号
使用ShareSDK之前,需要先在MobTech官网注册开发者账号,并获取AppKey和AppSecret,详情可以点击查看创建应用流程

分享到第三方平台,需要现在对应第三方平台申请平台的AppKey,详情可以点击查看注册应用流程
在这里插入图片描述

添加配置
获取SDK
MobService下载中心 下载最新版本SDK

选中ShareSDK,选择需要的平台,然后点击“保存配置”:在这里插入图片描述
在这里插入图片描述

选中所需要的平台后,点击“下载”按钮,就会下载好SDK
在这里插入图片描述

温馨提示: 各平台的右边有个问号,将鼠标放置上去会弹出该平台的简单说明在这里插入图片描述

SDK目录结构说明

SDK:
   Required:
      MOBFoundation.framework (基础工具库)
   ShareSDK:
      ShareSDK.framework (主业务实现)
      Support:
          Required:
              ShareSDK.bundle (ShareSDK资源文件)
              ShareSDKConnector.framework(v4.2.0版本后已废弃)
              PlatformConnector: 
                  ... (各个平台独立逻辑依赖库,只需要集成需要的平台即可)
              PlatformSDK:
                  ... (各个平台的SDK文件,不集成默认走去SDK业务逻辑,目前支持大部分主流
                  平台,如QQ 微博 微信等)
              Optional:(可选)
                  ShareSDKUI.bundle (分享UI的资源文件)
                  ShareSDKUI.framework (分享UI库)
                  ShareSDKConfigFile.framework(xml配置文件形式分享依赖库)
                  ShareSDKConfigFile.bundle (xml配置文件形式分享资源文件)
                  ShareSDKExtension.framework(功能的扩展框架插件。(第三方平台检测、 
                  一键分享、截屏分享、摇一摇分享等相关功能)
                  ShareSDKLink.framework(闭环分享库)

注意:导入的时候,需要将整个SDK资源文件导入到项目里

导入SDK
(1)手动下载SDK导入

将上面获取到的SDK,直接将整个SDK资源文件拖进项目里,如下图:在这里插入图片描述

并且勾选以下3个选项
在这里插入图片描述

在点击Finish,完成导入。

(2)CocoaPods引入,请参考 Pod集成

添加依赖库
在这里插入图片描述
在这里插入图片描述

点击“+”号,并在弹框里输入以下依赖库,进行添加

必要依赖库:

  • libc++.tbd
  • libz.tbd
  • libsqlite3.tbd

社交平台依赖库(根据自己需求添加):

苹果登录依赖库:

  • AuthenticationServices.framework

Facebook依赖库:

  • AuthenticationServices.framework
  • SafariServices.framework
  • Accelerate.framework

新浪微博

  • ImageIO.framework
  • Photos.framework
    Instagram
  • AssetsLibrary.framework
  • Photos.framework

美拍

  • AssetsLibrary.framework

Xcode配置
(1)在项目的Build Settings中的Other Linker Flags双击添加”-ObjC” ,注意大小写

在这里插入图片描述
(2) 配置ShareSDK的AppKey和AppSecret,键分别为 MOBAppKey 和 MOBAppSecret ,值为之前在MobTech官网开发者后台申请的AppKey和AppSecret(注意: 配置之后保存好,配置好后看项目的Info选项里有没)
在这里插入图片描述

API接口

回传用户隐私授权结果(uploadPrivacyPermissionStatus)
为保证您的App在集成MobSDK之后能够满足工信部相关合规要求,您应确保App安装首次冷启动且取得用户阅读您《隐私政策》授权之后,调用Mob提交到的隐私协议回传函数uploadPrivacyPermissionStatus回传隐私协议授权结果。

反之,如果用户不同意您App《隐私政策》授权,则不能调用uploadPrivacyPermissionStatus回传隐私协议授权结果。

相关隐私声明请参考链接合规指南

/**
 *  上传隐私协议授权状态
 *  @param isAgree 是否同意(用户授权后的结果)
 *  @param OnResult 执行回调结果,可为nil (注意业务逻辑不要依赖于这个success结果,建议业务逻辑在调用这个接口之后来写)
*/
+ (void)uploadPrivacyPermissionStatus:(BOOL)isAgree
                                                 onResult:(void (^_Nullable)(BOOL  success))handler;

示例代码

调用位置开发者可以自己指定,只需在使用SDK功能之前调用即可。

ocswift
#import <MOBFoundation/MobSDK+Privacy.h>
    [MobSDK uploadPrivacyPermissionStatus:YES onResult:^(BOOL success) {
    }];

导入头文件并进行第三方平台初始化(registPlatforms)
通常都是启动的时候在 application:didFinishLaunchingWithOptions:中添加初始化方法,也可保证注册在ShareSDK的业务执行之前即可。 这里提供几个主平台的初始化,其他平台可以参考demo里的MOBShareSDKHelper.m文件调用 点击这里

/**
 *  ShareSDK 平台注册方法
 *  @param importHandler 用于设置各平台注册信息,也可在mob管理后台进行注册
 */
+ (void)registPlatforms:(void(^)(SSDKRegister *platformsRegister))importHandler;

示例代码

#import <ShareSDK/ShareSDK.h>

    - (BOOL)application:(UIApplication *)application    didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    [ShareSDK registPlatforms:^(SSDKRegister *platformsRegister) {
        //QQ
        [platformsRegister setupQQWithAppId:@"100371282" appkey:@"aed9b0303e3ed1e27bae87c33761161d" enableUniversalLink:YES universalLink:@"https://70imc.share2dlink.com/qq_conn/100371282"];


        //更新到4.3.3或者以上版本,微信初始化需要使用以下初始化
        [platformsRegister setupWeChatWithAppId:@"wx617c77c82218ea2c" appSecret:@"c7253e5289986cf4c4c74d1ccc185fb1" universalLink:@"https://70imc.share2dlink.com/"];


        //新浪
        [platformsRegister setupSinaWeiboWithAppkey:@"568898243" appSecret:@"38a4f8204cc784f81f9f0daaf31e02e3" redirectUrl: @"http://www.sharesdk.cn" universalLink:@"https://70imc.share2dlink.com/"];

    }];
        return YES;
}

分享(share)
在项目需要分享的按钮事件里加以下接口:

/**
 *  设置分享参数
 *
 *  @param text     文本
 *  @param images   图片集合,传入参数可以为单张图片信息,也可以为一个NSArray,数组元素可以为UIImage、NSString(图片路径)、NSURL(图片路径)、SSDKImage。如: @"![](file:///C:\Users\liufl\AppData\Roaming\Tencent\QQTempSys\[5UQ[BL(6~BS2JV6W}N6[%S.png)

http://www.mob.com/images/logo_black.png" 或 @[@"![](file:///C:\Users\liufl\AppData\Roaming\Tencent\QQTempSys\[5UQ[BL(6~BS2JV6W}N6[%S.png)

http://www.mob.com/images/logo_black.png"]
 *  @param url      网页路径/应用路径
 *  @param title    标题
 *  @param type     分享类型
 */
- (void)SSDKSetupShareParamsByText:(NSString *)text
                            images:(id)images
                               url:(NSURL *)url
                             title:(NSString *)title
                              type:(SSDKContentType)type;
/**
 *  分享内容

 *  @param platformType 平台类型
 *  @param parameters 分享参数
 *  @param stateChangedHandler 状态变更回调处理
 *  @return 会话
 */
+ (SSDKSession *)share:(SSDKPlatformType)platformType
                    parameters:(NSMutableDictionary *)parameters
           onStateChanged:(SSDKShareStateChangedHandler)stateChangedHandler;

示例代码

#import <ShareSDK/ShareSDK.h>
    //构造分享内容
    NSMutableDictionary *params = [NSMutableDictionary dictionary];

    [params SSDKSetupShareParamsByText:@"test" 
        images:[UIImage  imageNamed:@"shareImg.png"] 
        url:[NSURL URLWithString:@"http://www.mob.com/"] 
        title:@"title" 
        type:SSDKContentTypeAuto];
    //调用分享接口分享
    [ShareSDK  share:SSDKPlatformTypeSinaWeibo 
        parameters:params 
        onStateChanged:^(SSDKResponseState state, NSDictionary *userData, 
        SSDKContentEntity *contentEntity, NSError *error) {  
        switch (state) {
            case SSDKResponseStateSuccess:
                     NSLog(@"成功");//成功
                     break;
            case SSDKResponseStateFail:
               {
                      NSLog(@"--%@",error.description);
                      //失败
                      break;
                }
            case SSDKResponseStateCancel:
                      //取消
                      break;

            default:
                break;
        }
}];
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MobTech袤博科技

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值