# 其它接口

# 查询隐私授权情况(选接)

# 接口说明

用于查询用户的隐私授权情况,例如是否需要用户授权隐私协议,以及隐私授权协议的名称。

sdkInstance.getPrivacySetting(options);

最低基础库版本要求

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

# 参数说明

参数说明如下表所示:

选项 类型 必填 默认值 说明
success function 否 -- 接口调用成功的回调函数
fail function 否 -- 接口调用失败的回调函数
complete function 否 -- 接口调用完成的回调函数,成功或失败均会调用

# 返回值说明

WARNING

返回值格式:JSON 格式。

选项 类型 说明
code number 响应状态码,为 0 时表示查询成功,其他非 0 状态码均表示查询失败
data object / null 查询成功时返回隐私授权情况,失败时返回 null
    data.needAuthorization boolean 是否需要用户授权隐私协议;若开发者未在《微信公众平台》中声明隐私收集类型,或用户之前已同意过隐私协议,则返回 false;若开发者声明了隐私收集类型,且用户还未同意过隐私协议,或用户之前同意过、但后来游戏又新增了隐私收集类型,则返回 true
    data.privacyContractName string 隐私授权协议的名称
message string 查询成功或失败时的相应描述信息

# 示例代码

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

// 当用户的客户端基础库版本低于 2.32.3 时,调用此接口将直接触发失败回调函数,并在正式版环境下于控制台输出错误提示(非正式版环境下,以弹窗形式展示)!
sdkInstance.getPrivacySetting({
  success: function(response) {
    console.log(response.data.needAuthorization); // 是否需要用户授权隐私协议
    console.log(response.data.privacyContractName); // 隐私授权协议的名称
  },
  fail: function(error) {
    console.log(error);
  },
  complete: function(result) {
    // do something here...
  }
});

# 跳转至隐私协议页面(选接)

# 接口说明

用于跳转至隐私协议页面;使用自定义隐私授权弹窗时,可在弹窗内提供查看隐私协议的入口,并在用户点击时调用此接口。

sdkInstance.openPrivacyContract(options);

最低基础库版本要求

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

# 参数说明

参数说明如下表所示:

选项 类型 必填 默认值 说明
success function 否 -- 接口调用成功的回调函数
fail function 否 -- 接口调用失败的回调函数
complete function 否 -- 接口调用完成的回调函数,成功或失败均会调用

# 返回值说明

WARNING

返回值格式:JSON 格式。

选项 类型 说明
code number 响应状态码,为 0 时表示打开成功,其他非 0 状态码均表示打开失败
data object / null 打开成功时返回相应信息(因微信API原因,此处可能为空),失败时返回 null
message string 打开成功或失败时的相应描述信息

# 示例代码

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

// 当用户的客户端基础库版本低于 2.32.3 时,调用此接口将直接触发失败回调函数,并在正式版环境下于控制台输出错误提示(非正式版环境下,以弹窗形式展示)!
sdkInstance.openPrivacyContract({
  success: function(response) {
    console.log(response);
  },
  fail: function(error) {
    console.log(error);
  },
  complete: function(result) {
    // do something here...
  }
});

# 触发隐私指引弹窗(选接)

# 接口说明

用于触发微信隐私保护指引弹窗。例如,开发者可以在调用任何真实隐私接口(如获取微信昵称、头像)之前调用此接口来模拟隐私接口调用,并触发微信隐私保护指引弹窗(包括自定义弹窗或平台弹窗)逻辑。

sdkInstance.requirePrivacyAuthorize(options);

最低基础库版本要求

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

# 参数说明

参数说明如下表所示:

选项 类型 必填 默认值 说明
success function 否 -- 接口调用成功的回调函数
fail function 否 -- 接口调用失败的回调函数
complete function 否 -- 接口调用完成的回调函数,成功或失败均会调用

# 返回值说明

WARNING

返回值格式:JSON 格式。

选项 类型 说明
code number 响应状态码,为 0 时表示调用成功,其他非 0 状态码均表示调用失败
data object / null 调用成功时返回相应信息(因微信API原因,此处可能为空),失败时返回 null
message string 调用成功或失败时的相应描述信息

# 示例代码

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

// 当用户的客户端基础库版本低于 2.32.3 时,调用此接口将直接触发失败回调函数,并在正式版环境下于控制台输出错误提示(非正式版环境下,以弹窗形式展示)!
sdkInstance.requirePrivacyAuthorize({
  showUpgradeMessage: true,
  success: function(response) {
    console.log(response);
  },
  fail: function(error) {
    console.log(error);
  },
  complete: function(result) {
    // do something here...
  }
});

# 监听隐私授权事件(选接)

# 接口说明

用于监听隐私接口需要用户授权事件。注册该事件监听后,将启用自定义隐私授权弹窗模式:当用户还未同意过隐私协议,且游戏调用了隐私相关接口(如获取微信用户信息),或调用了 sdkInstance.requirePrivacyAuthorize(options) 接口时,将触发该事件;此时需由游戏自行弹出隐私授权弹窗,并在用户同意或拒绝授权后调用 resolve 通知微信,触发该事件的原隐私接口才会继续执行。

sdkInstance.onNeedPrivacyAuthorization(listener);

最低基础库版本要求

当用户的客户端基础库版本低于 2.32.3 时,调用 sdkInstance.onNeedPrivacyAuthorization(listener) 接口将直接触发监听函数,其返回值中的 code 为非 0 状态码,并在正式版环境下于控制台输出错误提示(非正式版环境下,以弹窗形式展示)!

注意事项

  • 注册该事件监听后将全局启用自定义隐私授权弹窗模式,微信平台统一的隐私授权弹窗将不再展示,且微信未提供取消监听的方法;请确保游戏已实现自定义隐私授权弹窗后再调用此接口;
  • 事件触发后,务必根据用户的操作调用 resolve,否则触发该事件的原隐私接口将一直处于等待状态,无法返回结果;
  • 用户拒绝授权时,触发该事件的原隐私接口将调用失败,并返回 xxx:fail privacy permission is not authorized 的错误信息。

# 参数说明

参数说明如下表所示:

选项 类型 必填 默认值 说明
listener function 是 -- 隐私接口需要用户授权事件的监听函数

# 返回值说明

选项 类型 说明
code number 响应状态码,为 0 时表示事件触发成功,其他非 0 状态码均表示事件触发失败
data object / null 事件触发成功时返回隐私授权事件数据,失败时返回 null
    data.resolve function 用于通知微信用户的隐私授权操作结果,调用时需传入 { event: "xxx" },event 的可选值如下:
- exposureAuthorization 表示自定义隐私授权弹窗已曝光,可在展示弹窗时调用
- agree 表示用户同意隐私授权
- disagree 表示用户拒绝隐私授权
    data.eventInfo object 触发本次事件的关联信息
        data.eventInfo.referrer string 触发本次事件的接口或组件名,如 getUserInfo、UserInfoButton.onTap
message string 事件触发时的相应描述信息

# 示例代码

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

// 监听隐私授权事件(需在调用任何隐私相关接口之前注册)
sdkInstance.onNeedPrivacyAuthorization(function(response) {
  // code 非 0 时表示监听失败,例如用户基础库版本暂不支持此监听
  if (response.code !== 0) {
    return;
  }

  const resolve = response.data.resolve;

  // 此处 showPrivacyPopup 仅为演示,实际弹窗由开发者自行使用游戏引擎实现
  showPrivacyPopup({
    // 弹窗展示时,告知微信自定义隐私授权弹窗已曝光
    onShow: function() {
      resolve({ event: "exposureAuthorization" });
    },
    // 用户点击查看隐私协议
    onOpenContract: function() {
      sdkInstance.openPrivacyContract({});
    },
    // 用户点击同意
    onAgree: function() {
      resolve({ event: "agree" });
    },
    // 用户点击拒绝
    onDisagree: function() {
      resolve({ event: "disagree" });
    }
  });
});

# 退出游戏(选接)

# 接口说明

用于退出当前游戏,需在用户相关点击事件内触发。

sdkInstance.exit(options);

最低基础库版本要求

当用户的客户端基础库版本低于 2.17.3 时,调用 sdkInstance.exit(options) 接口将中断用户当前操作并弹出升级提示,不会报错!

# 参数说明

参数说明如下表所示:

选项 类型 必填 默认值 说明
success function 否 -- 接口调用成功的回调函数
fail function 否 -- 接口调用失败的回调函数
complete function 否 -- 接口调用完成的回调函数,成功或失败均会调用

# 返回值说明

WARNING

返回值格式:JSON 格式。

选项 类型 说明
code number 响应状态码,为 0 时表示调用成功,其他非 0 状态码均表示调用失败
data object / null 调用成功时返回相应信息(因微信API原因,此处可能为空),失败时返回 null
message string 调用成功或失败时的相应描述信息

# 示例代码

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

// 当用户的客户端基础库版本低于 2.17.3 时,调用此接口将中断用户当前操作并弹出升级提示,不会报错!
sdkInstance.exit({
  success: function(response) {
    console.log(response); // 接口响应,此处response.code为0,表示退出成功
  },
  fail: function(error) {
    console.log(error); // 退出失败的错误信息,error.code为非0状态码,error.message为错误消息
  },
  complete: function(result) {
    // do something here...
  }
});
Last Updated: 2026/9/29 17:45:44