跳到主要内容

开发指南

提示
  • 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.temporaryCachePathApplication.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.temporaryCachePathApplication.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未知错误