分享(Share)
[Player Network SDK & MSDK]
发送消息给指定好友,已经登录的情况下,渠道入参可以不填写。
当渠道为 System 时,会打开系统分享菜单,用户可以选择将内容分享到对应的 APP,需要该 APP 本身支持系统分享功能。 当渠道为 System 时,可以同时分享文本,链接和图片。
支持的平台
- Unity
- Unreal Engine
支持
Android, iOS, Windows
平台。支持
Android, iOS, Windows
平台。注意
MSDK 暂不支持 Windows
函数定义
- Unity
- Unreal Engine
void Share(GUAFriendReqInfo info, string channel = "");
static bool Share(const GUAFriendReqInfo &req_info, const std::string &channel = "");
入参说明
- Unity
- Unreal Engine
参数 | 类型 | 说明 |
---|---|---|
说明 | 好友请求(GUAFriendReqInfo) | 好友模块请求结构体 主要包含请求对象,请求信息等重要入参 |
channel | string | 渠道信息 比如 "Facebook" |
参数 | 类型 | 说明 |
---|---|---|
req_info | 好友请求(GUAFriendReqInfo) | 好友模块请求结构体 主要包含请求对象,请求信息等重要入参 |
channel | std::string | 渠道信息 比如 "Facebook" |
回调处理
回调处理接口是 GUAFriendBaseResultObserver。回调数据结构是 GUABaseResult。
- Unity
- Unreal Engine
回调事件是 FriendBaseEvents。 回调 ID 是 GUA_FRIEND_SHARE
。
回调事件是 OnBaseResultNotify。 回调 ID 是 kMethodIDFriendShare
。
代码示例
参考枚举结构 GUAFriendReqType。
- Unity
- Unreal Engine
(1) 分享文本,支持 System
var reqInfo = new GUAFriendReqInfo
{
Type = FriendReqType.Friend_REQ_TEXT,
Description = "description"
};
UnionAdapterAPI.GetFriendService().Share(reqInfo);
(2) 分享链接,支持 Facebook、System
var reqInfo = new GUAFriendReqInfo
{
Type = FriendReqType.Friend_REQ_LINK,
Link = "https://www.facebook.com/link"
};
UnionAdapterAPI.GetFriendService().Share(reqInfo);
(3) 分享图片,支持 Facebook、System
var reqInfo = new GUAFriendReqInfo
{
Type = FriendReqType.Friend_REQ_IMAGE,
ImagePath = "https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png";
};
UnionAdapterAPI.GetFriendService().Share(reqInfo);
(4) 分享文本,链接和图片,支持 System
var reqInfo = new GUAFriendReqInfo
{
Type = FriendReqType.Friend_REQ_IMAGE,
Description = "INTL Description",
Link = "https://www.facebook.com/link",
ImagePath = "https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png"
};
UnionAdapterAPI.GetFriendService().Share(reqInfo);
(5) 分享视频,支持 Facebook
var reqInfo = new GUAFriendReqInfo
{
Type = FriendReqType.Friend_REQ_VIDEO,
MediaPath = "/path/to/video"
};
UnionAdapterAPI.GetFriendService().Share(reqInfo);
(1) 分享文本,支持 System
GUAFriendReqInfo reqInfo;
reqInfo.type = (int)GUA_NAMESPACE::kGUAFriendReqTypeText;
reqInfo.description = "description";
GUA_NAMESPACE::GUAFriendService::Share(reqInfo);
(2) 分享链接,支持 Facebook、System
GUAFriendReqInfo reqInfo;
reqInfo.type = (int)GUA_NAMESPACE::kFriendReqTypeLink;
reqInfo.link = "https://www.facebook.com/link";
GUA_NAMESPACE::GUAFriendService::Share(reqInfo);
(3) 分享图片,支持 Facebook、System
GUAFriendReqInfo reqInfo;
reqInfo.type = (int)GUA_NAMESPACE::kFriendReqTypeImage;
reqInfo.image_path = "https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png";
GUA_NAMESPACE::GUAFriendService::Share(reqInfo);
(4) 分享邀请,支持 Facebook、System
GUAFriendReqInfo reqInfo ;
reqInfo.type = (int)GUA_NAMESPACE::kFriendReqTypeInvite;
reqInfo.link = "https://www.facebook.com/link";
GUA_NAMESPACE::GUAFriendService::Share(reqInfo);
(5) 分享视频
GUAFriendReqInfo reqInfo;
reqInfo.type = (int)GUA_NAMESPACE::kFriendReqTypeVideo;
reqInfo.media_path = "/path/to/video";
GUA_NAMESPACE::GUAFriendService::Share(reqInfo);
(6) 分享文本,链接和图片,支持 System
GUAFriendReqInfo reqInfo;
reqInfo.type = (int)GUA_NAMESPACE::kFriendReqTypeImage;
reqInfo.description = "INTL Service";
reqInfo.link = "https://www.facebook.com/link";
reqInfo.image_path = "https://www.google.com/images/branding/googlelogo/2x/googlelogo_color_272x92dp.png";
GUA_NAMESPACE::GUAFriendService::Share(reqInfo);