视频号授权 [仅限 MSDK]
[仅限 MSDK] MSDK 封装视频号授权接口,通过调用 ChannelPermissionAuth
接口,当前微信要求传入 snsapi_channels_livestream
,在 MSDK 的回调中获取 tdiAuthBuffer
,用于后续的直播登录。 该功能不限制登录渠道及登录态,即可以跨平台调用该接口。
注意
- 当前仅支持:"WeChat"
- 权限列表目前请填
snsapi_channels_livestream
,这同时也是底层区分正常登录与权限申请的标记,后续微信要求的 permissions 可能会变动 - 视频号授权回调中
tdiAuthBuffer
存在于extraJson
字段中,以 Base64 的格式返回,通过 Json 解析获取,请使用标准的 Base64 解码后使用 - 暂未支持超时回调逻辑
- MSDK 只返回
tdiAuthBuffer
, 使用微信联系点 [jaryqiu] 和 [gisonyang] 检查以了解实际使用情况。
支持的平台
- Unity
- Unreal Engine
支持
Android, iOS
平台。支持
Android, iOS
平台。函数定义
- Unity
- Unreal Engine
void ChannelPermissionAuth(string channel, string permissions = "", string subChannel = "", string extraJson = "");
static void ChannelPermissionAuth(const std::string &channel, const std::string &permissions = "", const std::string &sub_channel = "", const std::string &extra_json = "{}");
入参说明
- Unity
- Unreal Engine
参数 | 类型 | 描述 |
---|---|---|
channel | string | 渠道名字 大小写敏感。当前仅支持:"WeChat" |
permissions | string | 渠道授予的权限列表 使用逗号 (,) 分隔多个权限,当前需要 snsapi_channels_livestream 权限。 |
subChannel | string | 子渠道名字 大小写敏感,暂不支持,传入 null 或不传入即可。 |
extraJson | string | 扩展字段 具体含义参考各渠道说明。 暂不支持,传入 null 或不传入即可 |
参数 | 类型 | 描述 |
---|---|---|
channel | string | 渠道名字 大小写敏感当前仅支持微信。 |
permissions | string | 渠道授予的权限列表 使用逗号 (,) 分隔多个权限,当前需要 snsapi_channels_livestream 权限。 |
subChannel | string | 子渠道名字 大小写敏感。 暂不支持,传入 null 或不传入即可。 |
extraJson | string | 扩展字段 具体含义参考各渠道说明。 暂不支持,传入 null 或不传入即可 |
回调处理
回调处理接口是 GUABaseResultObservers。回调数据结构是 GUABaseResult。
- Unity
- Unreal Engine
回调事件是 LoginBaseResultEvents
。 回调 ID 是 GUA_ACCOUNT_CHANNEL_PERMISSION_AUTH
。
回调事件是 OnBaseResultNotify
。 回调 ID 是 kMethodIDAccountChannelPermissionAuth
。
代码示例
- Unity
- Unreal Engine
UnionAdapterAPI.GetAccountService().ChannelPermissionAuth("WeChat");
GUA_NAMESPACE::GUAAccountService::ChannelPermissionAuth("WeChat");