跳到主要内容

开发指南

提示
  • Combo SDK for WebGL 不提供游戏内分享功能。如有需要,请自行对接各个小游戏平台。

Combo SDK 聚合了 Android、iOS 与 HarmonyOS 平台的系统分享及社交媒体分享方式,并通过统一的接口屏蔽各平台的对接差异。不同平台支持的分享类型和场景不同,详情请查看 分享规则说明。

图片资源分享​

支持平台​

Android iOS HarmonyOS

方法签名​

public static void Share(ImageShareOptions opts, Action<Result<ShareResult>> callback);

代码示例​

Show Code
// 小红书图片分享
var opts = new ImageShareOptions
{
Title = "Share Title",
Text = "Share Text",
ImageUrl = Path.Combine(Application.temporaryCachePath, "sharePicture.png"),
Target = ShareTarget.AGORA
};

ComboSDK.Share(opts, r =>
{
if (r.IsSuccess)
{
var result = r.Data;
//TODO: 分享成功处理
}
else
{
var error = r.Error;
Debug.LogError("分享失败:" + error.DetailMessage);
}
});

方法参数​

ParametersRequiredTypeDescription
optsTrueImageShareOptions图片分享传入的参数集
callbackTrueAction<Result<ShareResult>>分享完成后的回调方法

ImageShareOptions​

ParametersRequiredTypeDescription
ImageUrlTruestring分享的本地图片路径
TitleFalsestring分享的标题
TextFalsestring分享的文本描述内容
HashtagFalsestring分享附加话题
SceneFalseShareScene分享目标场景
TargetFalseShareTarget分享目标平台
提示
  • 不同媒体平台对上述参数支持情况不同,如 Hashtag 仅抖音平台支持,详情请查看 分享规则说明。
  • ImageUrl 建议指向 Application.temporaryCachePath 或 Application.persistentDataPath 目录下的图片资源,否则可能无法正常读取资源。
  • 支持配置默认分享文案,若需配置默认分享文案,请联系世游运营人员,Text 内容将覆盖配置的默认文案。

ShareResult​

PropertiesSupported PlatformsTypeDescription

视频资源分享​

支持平台​

Android iOS HarmonyOS

方法签名​

public static void Share(VideoShareOptions opts, Action<Result<ShareResult>> callback);

代码示例​

Show Code
// 抖音视频分享
var opts = new VideoShareOptions
{
Title = "Share Title",
VideoUrl = Path.Combine(Application.temporaryCachePath, "shareVideo.mp4"),
Hashtag = "The Hashtag",
Target = ShareTarget.DOUYIN,
Scene = ShareScene.DOUYIN_PUBLISH
};

ComboSDK.Share(opts, r =>
{
if (r.IsSuccess)
{
var result = r.Data;
//TODO: 分享成功处理
}
else
{
var error = r.Error;
Debug.LogError("分享失败:" + error.DetailMessage);
}
});

方法参数​

ParametersRequiredTypeDescription
optsTrueVideoShareOptions视频分享传入的参数集
callbackTrueAction<Result<ShareResult>>分享完成后的回调方法

VideoShareOptions​

ParametersRequiredTypeDescription
VideoUrlTruestring分享的视频路径
TitleFalsestring分享的标题
TextFalsestring分享的文本描述内容
VideoCoverUrlFalsestring视频封面路径,微信视频封面缩略图大小不超过 32KB
HashtagFalsestring分享附加话题
SceneFalseShareScene分享目标场景
TargetFalseShareTarget分享目标平台
提示
  • 不同媒体平台对上述参数支持情况不同,如 Hashtag 仅抖音平台支持,详情请查看 分享规则说明。
  • 本地媒体资源(图片、视频)建议指向 Application.temporaryCachePath 或 Application.persistentDataPath 目录下的媒体资源,否则可能无法正常读取。
  • 支持配置默认分享文案,若需配置默认分享文案,请联系世游运营人员,Text 属性内容将覆盖配置的默认文案。
  • iOS 分享视频资源至 QQ 平台时,必须传入 Title 字段。
  • HarmonyOS 分享视频资源至微博时,必须传入本地图片类型的 VideoCoverUrl 字段。

ShareResult​

PropertiesSupported PlatformsTypeDescription
提示

系统分享、微信及 QQ 支持分享网络链接。

支持平台​

Android iOS HarmonyOS

方法签名​

public static void Share(LinkShareOptions opts, Action<Result<ShareResult>> callback);

代码示例​

Show Code
// 系统链接分享
var opts = new LinkShareOptions
{
Title = "Share Title",
Text = "Share Text",
LinkUrl = "https://docs.seayoo.com/",
LinkCoverUrl = Path.Combine(Application.temporaryCachePath, "cover.png"),
Target = ShareTarget.SYSTEM
};

ComboSDK.Share(opts, r =>
{
if (r.IsSuccess)
{
var result = r.Data;
//TODO: 分享成功处理
}
else
{
var error = r.Error;
Debug.LogError("分享失败:" + error.DetailMessage);
}
});

方法参数​

ParametersRequiredTypeDescription
optsTrueLinkShareOptions链接分享传入的参数集
callbackTrueAction<Result<ShareResult>>分享完成后的回调方法
ParametersRequiredTypeDescription
LinkUrlTruestring分享的网络链接
TitleFalsestring分享的标题
TextFalsestring分享的文本描述内容
LinkCoverUrlFalsestring链接封面路径,资源类型要求因分享平台而异
SceneFalseShareScene分享目标场景
TargetFalseShareTarget分享目标平台
PropertiesSupported PlatformsTypeDescription

获取可用的分享方式​

信息
  • Combo SDK 各媒体平台分享功能是选接的,因此不同项目支持的分享目标平台会有所不同,默认支持系统分享。
  • 建议使用此接口判断是否支持目标分享平台,当确认该平台可用后,再显示相关分享平台的按钮。

支持平台​

Android iOS HarmonyOS

方法签名​

public static ShareTarget[] GetAvailableShareTargets();

代码示例​

Show Code
using System.Linq;

var availableShares = ComboSDK.GetAvailableShareTargets();
if (availableShares.Contains(ShareTarget.TAPTAP))
{
//TODO: 显示 TapTap 分享按钮 UI
}
if (availableShares.Contains(ShareTarget.AGORA))
{
//TODO: 显示小红书分享按钮 UI
}
if (availableShares.Contains(ShareTarget.WEIXIN))
{
//TODO: 显示微信分享按钮 UI,可用场景请查看分享规则
}
if (availableShares.Contains(ShareTarget.WEIBO))
{
//TODO: 显示微博分享按钮 UI
}
if (availableShares.Contains(ShareTarget.DOUYIN))
{
//TODO: 显示抖音分享按钮 UI,可用场景请查看分享规则
}
if (availableShares.Contains(ShareTarget.QQ))
{
//TODO: 显示 QQ 分享按钮 UI,可用场景请查看分享规则
}

ShareScene​

Enum KeySupported PlatformsDescription
WEIXIN_SESSIONAndroid iOS HarmonyOS微信会话
WEIXIN_TIMELINEAndroid iOS HarmonyOS微信朋友圈
WEIXIN_FAVORITEAndroid iOS微信收藏
DOUYIN_EDITAndroid iOS HarmonyOS抖音编辑页
DOUYIN_PUBLISHAndroid iOS抖音发布页
DOUYIN_CONTACTSAndroid iOS抖音私信
QQAndroid iOS HarmonyOSQQ 好友
QZONEAndroid iOS HarmonyOSQQ 空间

ShareTarget​

警告

在传入 ShareTarget 前,请先确认该平台分享功能是否可用,详情请参考 GetAvailableShareTargets 接口。

Enum KeySupported PlatformsDescription
SYSTEMAndroid iOS HarmonyOS系统分享
TAPTAPAndroidTapTap 分享
AGORAAndroid iOS小红书分享
WEIXINAndroid iOS HarmonyOS微信分享
WEIBOAndroid iOS HarmonyOS微博分享
DOUYINAndroid iOS HarmonyOS抖音分享
QQAndroid iOS HarmonyOSQQ 分享

Error​

CodeSupported PlatformsDescription
INVALID_ARGUMENTSAndroid iOS HarmonyOS无效的参数
USER_CANCELLEDAndroid iOS HarmonyOS用户主动取消操作
APP_NOT_INSTALLAndroid iOS HarmonyOS目标分享应用未安装
APP_VERSION_NOT_SUPPORTAndroid iOS HarmonyOS目标分享应用版本不支持当前功能
TYPE_NOT_SUPPORTAndroid iOS HarmonyOS目标平台不支持当前分享类型
SCENE_NOT_SUPPORTAndroid iOS HarmonyOS目标平台不支持当前分享场景
THIRD_PARTY_ERRORAndroid iOS HarmonyOS第三方 SDK 错误
UNKNOWN_ERRORAndroid iOS HarmonyOS未知错误