用这个方法来判断就行, wx.getSetting //只返回用户勾选过订阅面板中的“总是保持以上选择,不再询问”的订阅消息 wx.getSetting({ withSubscriptions: true, success (res) { console.log(res.subscriptionsSetting) // res.subscriptionsSetting = { // mainSwitch: true, // 订阅消息总开关 // itemSettings: { // 每一项开关 // SYS_MSG_TYPE_INTERACTIVE: 'accept', // 小游戏系统订阅消息 // SYS_MSG_TYPE_RANK: 'accept' // zun-LzcQyW-edafCVvzPkK4de2Rllr1fFpw2A_x0oXE: 'reject', // 普通一次性订阅消息 // ke_OZC_66gZxALLcsuI7ilCJSP2OJ2vWo2ooUPpkWrw: 'ban', // } // } } }) // 遍历下接下来要操作的tmplIds,如果包含了就是选择了"总是"
小程序订阅消息——能否判断是否勾选“总是保持以上选择”?wx.requestSubscribeMessage(Object object) 请问:小程序订阅消息平台能力上,是否支持针对特定模板判断用户是否已勾选“总是保持以上选择”? 若不支持,则对于用户的体验将非常糟糕。 1、根据订阅消息能力要求,需通过特定元素(如按钮/图片/弹窗等)的点击事件 触发订阅授权事件; 2、若不支持判断用户是否已勾选“总是保持以上选择”,则无法根据用户已勾选“总是保持以上选择”来决定该特定元素的显示与否; 3、根据订阅消息能力要求,选择“总是保持以上选择”后,是不会再次拉起订阅授权弹窗的! 那么糟糕的问题来了,对于已勾选“总是保持以上选择”的用户,他每次都会看到那个触发的特定元素,然后他点击后又无反应,那不是糟糕的体验吗……
2020-11-11