需求:在拥有3+个的消息模板订阅的情况下,实时根据用户的消息订阅状态,过滤已授权的消息模板,点击按钮后弹出还没订阅的前3条消息模板的订阅授权
在代码里异步调用wx.getSetting后,获取异步结果后再调用消息订阅授权接口,失败,
返回wx.requestSubscribeDeviceMessage fail]: {errMsg: "requestSubscribeDeviceMessage:fail can only be invoked by user TAP gesture."}
但是如果把wx.getSetting的调用删除,异步调用云端接口,是正常的
期望:调用wx.getSetting后,获取异步结果后可以成功调用消息订阅授权接口

你好,只能同步在点击回调里调用requestSubscribeDeviceMessage
订阅消息的api只能用户手动点击,而且是用户点击一次可收到一次消息
queryWxHardwareDeviceMessageInfo(),只能放在按钮点击回调里面
有可能是wx.getSetting(),await阻塞导致点击事件上下文消失,太长时间阻塞是会导致点击事件上下文消失导致触发拦截