# 游戏圈(选接)

通过游戏圈组件,可以在游戏内为用户提供游戏交流、用户互动、反馈收集等社区能力。

# 创建游戏圈入口

# 接口说明

用于在游戏内创建一个用于打开游戏圈的按钮,并在点击时跳转至游戏圈主页。

sdkInstance.createGameClubButton(options);

最低基础库版本要求

当用户的客户端基础库版本过低时,调用 sdkInstance.createGameClubButton(options) 接口将返回 undefined,并在正式版环境下于控制台输出错误提示(非正式版环境下,以弹窗形式展示),需要游戏客户端对返回值做兼容处理!

# 参数说明

选项 类型 必填 默认值 说明
type string text

按钮类型

  • text - 文本按钮,允许自定义文本及背景色
  • image - 图片按钮,仅允许设置背景贴图,背景贴图会直接拉伸至按钮的宽高
text string -- 文本按钮的文本,仅当 typetext 时有效
icon string --

图片按钮的图标,仅当 typeimageimage 字段未设置时有效

  • blue - 蓝色图标
  • white - 白色图标
  • dark - 有黑色圆角背景的白色图标
  • light - 有白色圆角背景的蓝色图标
image string -- 图片按钮的背景图片,仅当 typeimage 时有效
style object -- 按钮样式
    style.top number 0 按钮左上角纵坐标
    style.left number 0 按钮左上角横坐标
    style.width number 100 按钮宽度
    style.height number 32 按钮高度
    style.borderWidth number 0 按钮边框宽度
    style.borderRadius number 0 按钮边框圆角
    style.borderColor string #1677ff 按钮边框颜色,格式为 616 进制数
    style.backgroundColor string #1677ff 按钮背景颜色,格式为 616 进制数
    style.color string #ffffff 按钮文本颜色,格式为 616 进制数
    style.fontSize number 12 按钮文本字号
    style.textAlign string center

按钮文本水平居中方式

  • left - 居左
  • center - 居中
  • right - 居右
openlink string -- 游戏圈传参数,进入到指定圈子下;该参数传游戏圈的圈子ID

# 返回值说明

调用 sdkInstance.createGameClubButton(options) 接口,将返回一个用于打开游戏圈的按钮实例。具体实例方法如下表所示:

方法 类型 说明
show function 用于显示游戏圈按钮
hide function 用于隐藏游戏圈按钮
destroy function 用于销毁游戏圈按钮
onTap function 用于绑定游戏圈按钮的点击事件回调函数
offTap function 用于注销游戏圈按钮的点击事件回调函数

# 特别说明

注意,由于支付宝的策略限制,打开游戏圈的动作无法由游戏原生按钮触发,必须使用上述API创建指定按钮,并在点击时自动跳转。但往往游戏拥有自己的视觉设计体系,而该API创建的按钮并不符合美术需求,遇到这种情况可通过以下两种方式解决:

  • 设置 typetext 时,设置按钮文本、边框颜色及背景颜色,以便符合游戏视觉设计,并利用宽高及横纵坐标将其覆盖在游戏原生按钮上;
  • 设置 typeimage 时,将游戏的按钮图片素材作为背景图片,或使用 icon 图标按钮。

# 示例代码

注:示例代码中的参数或选项均为演示数据,仅供参考,谢谢!

// 创建游戏圈按钮
const gameClubButton = sdkInstance.createGameClubButton({
  type: "text",
  text: "游戏圈",
  style: {
    top: 376,
    left: 40,
    width: 100,
    height: 32,
    backgroundColor: "#1677ff",
    borderWidth: 0,
    borderColor: "#1677ff",
    borderRadius: 0,
    color: "#ffffff",
    fontSize: 12,
    textAlign: "center"
  }
});

// 先判断 gameClubButton 是否存在再使用
// 因为当用户的客户端基础库版本过低时,调用 sdkInstance.createGameClubButton 接口将返回 undefined
if (gameClubButton) {
  // 显示游戏圈按钮
  gameClubButton.show();

  // 隐藏游戏圈按钮
  gameClubButton.hide();

  // 销毁游戏圈按钮
  gameClubButton.destroy();

  // 添加或移除游戏圈按钮的点击事件监听函数
  const listener = function(response) {
    console.log(response.code); // 事件响应状态码,为0时表示打开游戏圈成功,其他非0状态码表示打开失败
    console.log(response.message); // 打开成功或失败时的相应描述信息
  };

  gameClubButton.onTap(listener);
  gameClubButton.offTap(listener);
}

# 获取用户游戏圈数据

# 接口说明

用于在游戏内获取用户游戏圈数据。

sdkInstance.getGameClubData(options);

最低基础库版本要求

当用户的客户端基础库版本过低时,调用 sdkInstance.getGameClubData(options) 接口将直接触发失败回调函数,并在正式版环境下于控制台输出错误提示(非正式版环境下,以弹窗形式展示)!

# 参数说明

选项 类型 必填 默认值 说明
dataTypeList object[] -- 需要获取的数据指标对象数组
    dataTypeList[n].type number -- 见下文 type 表格说明
success function -- 获取成功的回调函数
fail function -- 获取失败的回调函数
complete function -- 获取完成的回调函数,成功或失败均会调用

# 数据指标 type 说明

取值 说明
1 加入游戏圈时间,秒级Unix时间戳
3 用户禁言状态;0:正常,1:禁言
4 当天(自然日)点赞贴子数
5 当天(自然日)评论贴子数
6 当天(自然日)发表贴子数
7 当天(自然日)发表视频贴子数
8 当天(自然日)点赞官方贴子数
9 当天(自然日)评论官方贴子数
10 当天(自然日)用户在本圈子访问的时长
11 当天(自然日)用户在本圈子浏览贴子的数量

# 返回值说明

选项 类型 说明
code number 响应状态码,为 0 时表示获取成功,其他非 0 状态码均表示获取失败
data object / null 获取成功时返回用户游戏圈数据,失败时返回 null
    data.dataList string GameClubData 数据,见下文 GameClubData 数据结构说明
message string 获取成功或失败时的相应描述信息

# GameClubData 数据结构

选项 类型 说明
dataList object[] 游戏圈相关数据的对象数组
    dataList[n].dataType object 与输入的 dataType 数据指标对象一致
    dataList[n].value number 不同 type 返回的 value 含义不同,见上文数据指标 type 说明

# 示例代码

注:示例代码中的参数或选项均为演示数据,仅供参考,谢谢!

// 当用户的客户端基础库版本过低时,调用此接口将直接触发失败回调函数,并在正式版环境下于控制台输出错误提示(非正式版环境下,以弹窗形式展示)
sdkInstance.getGameClubData({
  dataTypeList: [
    { type: 1 },
    { type: 3 },
    { type: 4 },
    { type: 5 },
    { type: 6 },
    { type: 7 },
    { type: 8 },
    { type: 9 },
    { type: 10 },
    { type: 11 }
  ],
  success: function(response) {
    console.log(response);
  },
  fail: function(error) {
    console.log(error);
  },
  complete: function(result) {
    // do something here...
  }
});
Last Updated: 2026/4/28 11:16:59