订阅消息更新时间:2025-12-22 20:11:01
qg.querySubscribe
基础信息说明
功能概述:获取当前用户的消息订阅状态。
| 项目 | 说明 |
| 版本要求 | 框架版本号13090001开始支持本方法 |
| 前提条件 | 无 |
| 使用限制 | 无 |
| 相关教程 | 无 |
参数说明
qg.querySubscribe(option)
| 属性名 | 类型 | 必填 | 说明 |
| success | Function(Object res) | 否 | 查询成功的回调函数 |
| fail | Function | 否 | 查询失败的回调函数 |
| complete | Function | 否 | 调用结束的回调函数 |
回调结果说明
- success:宿主返回订阅状态时触发。
- fail:查询失败或宿主异常时触发。
- complete:调用结束都会执行,入参与 success/fail 保持一致。
回调成功
| 属性名 | 类型 | 说明 |
| disableSubscribePopup | Number | 1 不再提醒,0 允许再次提醒 |
| msgTypeSetting | Array | 消息模板设置数组,包含多个消息模板对象 |
消息模板对象结构
| 属性名 | 类型 | 说明 |
| msgTemplateID | String | 消息模板 ID(正确ID 示例:10000;错误ID 示例:10000_10000;和开发者后台注册的消息模板ID一致即可) |
| templateName | String | 消息模板名称 |
| value | Number | 对订阅消息模板的订阅情况,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)
| 属性名 | 类型 | 必填 | 说明 |
| msgTypeSetting | Array | 是 | 要展示的消息模板数组,每个元素需包含 msgTemplateID,数量 ≤ 5 |
| success | Function | 否 | 调起弹窗并成功返回结果时触发 |
| fail | Function | 否 | 调用失败或被拒绝时触发 |
| complete | Function | 否 | 调用结束都会执行 |
返回值说明
无同步返回,通过 success / fail / complete 回调获取。
回调结果说明
- success:宿主弹窗完成并返回结果时触发
- fail:调用失败、参数异常或用户拒绝时触发
- complete:调用流程结束都会执行
回调成功
success(res) 结构
| 属性名 | 类型 | 说明 |
| msgTypeSetting | Array | 用户最终订阅结果数组 |
数组元素示例
| 属性名 | 类型 | 说明 |
| msgTemplateID | String | 消息模板 ID |
| templateName | String | 模板名称 |
| value | Number | 0 拒绝、1 允许 |
用户点击允许并修改了设置:
{
"msgTypeSetting": [
{
"msgTemplateID": "1",
"templateName": "游玩提醒",
"value": 1
},
{
"msgTemplateID": "2",
"templateName": "礼包领取提醒",
"value": 0
}
]
}用户点击拒绝,返回一个空Json:
{
"msgTypeSetting": []
}错误码
| 错误码 | 错误信息 | 说明 |
| 202 | parameters error, please check your parameters | 参数错误或缺失 |
| 0 | Persistent Preference Setting is set to On, no pop-up window… | 用户勾选过“不总是保持以上选择,不再询问” |
| 200 | network error | 用户点击“允许”按钮后,因断网或其他错误导致订阅失败 |
| 200 | Package name cannot be null or empty | 获取不到游戏包名 |
| 206 | Dialog already open | 弹窗已经处于打开状态时,再次请求打开 |
示例代码
qg.openSubscribePopWindow({
success: res => {
console.log(res)
},
fail: err => {
console.log(err)
},
msgTypeSetting: [
{ msgTemplateID: '1' },
{ msgTemplateID: '2' }
],
})注意事项
- 在调用 openSubscribePopWindow前,建议先调用 querySubscribe查询当前状态,避免在用户已订阅状态下再次弹窗,影响用户体验
- 建议在网络环境良好时调用订阅相关接口,减少因网络问题导致的失败
上一篇:振动
下一篇:广告
文档内容是否有帮助?
有帮助
无帮助