解决微信小程序弹出订阅消息,在某些用户上数量缺少的问题

lxf2023-04-08 18:02:01

问题

业务中同样一个操作,触发订阅消息授权,正常情况下应该出现三条(最多可配置三条),但在某些用户上会出现两条的现象,如图

解决微信小程序弹出订阅消息,在某些用户上数量缺少的问题

原因剖析

查看触发订阅消息接口的打印信息,数量是正确的,但是有一条数据默认返回了权限,如图所示:

解决微信小程序弹出订阅消息,在某些用户上数量缺少的问题

 

打开设置(注意这个需要点击按钮触发),查看订阅消息,能对这条消息进行设置,应该是之前勾选过“总是保持以上选项,不再询问”的选项,所以没有展示在界面上:

解决微信小程序弹出订阅消息,在某些用户上数量缺少的问题

解决微信小程序弹出订阅消息,在某些用户上数量缺少的问题

但注意,这里设置了接受/不接受,都会在每次弹出订阅消息后默认返回,不会再出现这条消息的授权。

解决方案

线上用户:如果选择“总是保持以上选择,不再询问” 后,可以在设置中开启或拒绝接收,但不会再次拉起授权弹窗,如需用户触发授权,可以引导客户点击打开设置页面进行处理。

开发调试:真机上微信小程序wx.requestSubscribeMessage 在弹起授权弹窗之后,用户点击了 “总是保持以上选择,不再询问” 后。 之后不再会唤起授权弹窗,删除小程序仍然不行。但开发测试过程需要重新唤起授权的情况。网上查询资料之后,发现可以通过 开发者工具 → 清缓存 → 真机重新扫描预览,这样就能重新唤起了。

解决微信小程序弹出订阅消息,在某些用户上数量缺少的问题