search
开发文档
开发文档/小游戏开发/API/平台能力/订阅消息
订阅消息更新时间:2025-12-22 20:11:01

qg.querySubscribe

基础信息说明

功能概述:获取当前用户的消息订阅状态。

项目说明
版本要求框架版本号13090001开始支持本方法
前提条件
使用限制
相关教程

参数说明

qg.querySubscribe(option)

属性名类型必填说明
successFunction(Object res)查询成功的回调函数
failFunction查询失败的回调函数
completeFunction调用结束的回调函数

回调结果说明

  • success:宿主返回订阅状态时触发。
  • fail:查询失败或宿主异常时触发。
  • complete:调用结束都会执行,入参与 success/fail 保持一致。

回调成功

属性名类型说明
disableSubscribePopupNumber1 不再提醒,0 允许再次提醒
msgTypeSettingArray消息模板设置数组,包含多个消息模板对象

消息模板对象结构

属性名类型说明
msgTemplateIDString消息模板 ID(正确ID 示例:10000;错误ID 示例:10000_10000;和开发者后台注册的消息模板ID一致即可)
templateNameString消息模板名称
valueNumber对订阅消息模板的订阅情况,0 关闭、1 打开

示例代码

qg.querySubscribe({
success: res => {
console.log(res)
},
fail: err => {
console.log(err)
},
complete: () => {}
})

返回示例

{
"disableSubscribePopup": 1,
"msgTypeSetting": [
{
"msgTemplateID": "1",
"templateName": "游玩提醒",
"value": 1
},
{
"msgTemplateID": "2",
"templateName": "礼包领取提醒",
"value": 1
}
]
}

注意事项

  • 该接口不会触发订阅弹窗,需要弹窗时请配合 qg.openSubscribePopWindow
  • 宿主可能存在数分钟的本地缓存,设置页手动修改后不会立即反映到查询结果
  • 处理返回值时应检查 msgTypeSetting 是否为空,以判断用户是否拒绝或模板是否可用
  • 仅支持查询后台已定义的模板,数量不宜超过 5 个

qg.openSubscribePopWindow

基础信息说明

功能概述:调起消息订阅请求弹窗,用户操作后返回授权结果(允许/拒绝)。

项目说明
版本要求框架版本号13090001开始支持本方法
前提条件
使用限制用户勾选过“总是保持以上选择,不再询问”后,将禁止弹出弹窗
相关教程

参数说明

qg.openSubscribePopWindow(option)

属性名类型必填说明
msgTypeSettingArray要展示的消息模板数组,每个元素需包含 msgTemplateID,数量 ≤ 5
successFunction调起弹窗并成功返回结果时触发
failFunction调用失败或被拒绝时触发
completeFunction调用结束都会执行

返回值说明

无同步返回,通过 success / fail / complete 回调获取。

回调结果说明

  • success:宿主弹窗完成并返回结果时触发
  • fail:调用失败、参数异常或用户拒绝时触发
  • complete:调用流程结束都会执行

回调成功
success(res) 结构

属性名类型说明
msgTypeSettingArray用户最终订阅结果数组

数组元素示例

属性名类型说明
msgTemplateIDString消息模板 ID
templateNameString模板名称
valueNumber0 拒绝、1 允许

用户点击允许并修改了设置:

{
"msgTypeSetting": [
{
"msgTemplateID": "1",
"templateName": "游玩提醒",
"value": 1
},
{
"msgTemplateID": "2",
"templateName": "礼包领取提醒",
"value": 0
}
]
}

用户点击拒绝,返回一个空Json:

{
"msgTypeSetting": []
}

错误码

错误码错误信息说明
202parameters error, please check your parameters参数错误或缺失
0Persistent Preference Setting is set to On, no pop-up window…用户勾选过“不总是保持以上选择,不再询问”
200network error用户点击“允许”按钮后,因断网或其他错误导致订阅失败
200Package name cannot be null or empty获取不到游戏包名
206Dialog already open弹窗已经处于打开状态时,再次请求打开

示例代码

qg.openSubscribePopWindow({
success: res => {
console.log(res)
},
fail: err => {
console.log(err)
},
msgTypeSetting: [
{ msgTemplateID: '1' },
{ msgTemplateID: '2' }
],
})

注意事项

  • 在调用 openSubscribePopWindow前,建议先调用 querySubscribe查询当前状态,避免在用户已订阅状态下再次弹窗,影响用户体验
  • 建议在网络环境良好时调用订阅相关接口,减少因网络问题导致的失败
上一篇:振动
下一篇:广告
文档内容是否有帮助?
有帮助
无帮助