supersdk

文档中心

文档中心

下载文档

分享模块


YZShareSDK 提供微信、微博、QQ 及 Facebook 等部分海外平台分享功能。

一、注意事项

注意一:国内(除微博以外)必须安装对应的客户端,海外(除 Facebook 以外)必须安装客户端。

注意二:在 iOS13 之后,国内分享必须配置 Associated Domains,在分享参数申请时,需要添加 Universal link。

注意三:微信分享没有给回调,不能依赖 SDK 给的 code 判定成功或者失败的依据。

二、分享接口

接口调用:

[SuperSDK invoke:@"yzsharesdk"
        funcName:@"share"
      parameters:@{
                    @"title" : @"分享的标题", // 必传
                    @"content" : @"分享的内容", // 必传
                    @"url" : @"http://www.supersdk.cn", // URL 字符串,可以包含中文,不可进行 URL 编码,没有可以不传
                    @"images" : @"http://www.mob.com/images/logo_black.png", // 分享图片为本地路径,参数为 string 类型
                    @"platform" : @"1", // platform 该字段选传,不传会拉起 ShareSDK 默认分享 UI,传了则不会拉起 UI,直接调用对应平台分享接口
                }];

接口回调:

- (void)handlerCallback:(NSString *)moduleName
               funcName:(NSString *)funcName
             parameters:(NSString *)parameters {
    NSLog(@"****** 收到回调\n moduleName : %@,\n funcName : %@,\n parameters : %@", moduleName, funcName, parameters);

    NSDictionary *retParam = nil;
    if (parameters) {
        NSData *jsonData = [parameters dataUsingEncoding:NSUTF8StringEncoding];
        if (jsonData) {
            retParam = [NSJSONSerialization JSONObjectWithData:jsonData options:NSJSONReadingMutableLeaves error:nil];
        }
    }
    
    int code = [[retParam objectForKey:@"code"] intValue];
    NSString *desc = [retParam objectForKey:@"msg"];
    id data  = [retParam objectForKey:@"data"];
    
    if ([moduleName isEqualToString:@"yzsharesdk"]) {// YZShareSDK 模块回调
        
        if ([funcName isEqualToString:@"share"]) {// 分享接口回调
            if(code == BCORE_SUCCESS) {
                NSLog(@"分享成功");
            }
            else {
                NSLog(@"分享失败");
            }
        }
    }
}

日志打印:

 moduleName : yzsharesdk,
 funcName : share,
 result : {
  "msg" : "分享成功",
  "code" : 1
}

附录

platform 字段说明:

平台 参数
新浪微博 1
微信好友 2
微信朋友圈 3
微信收藏 4
QQ 好友 5
QQ 空间 6
Facebook 7
Instagram 8
Line 11
VKontakte 13
Tiktok 14