小程序消息订阅

关于小程序消息订阅

注意:小程序消息订阅需要用户手动点击或者在支付回调中才能触发

  • wx.requestSubscribeMessage (小程序消息订阅消息API)

 wx.requestSubscribeMessage({	
 	 // 订阅消息模板id
      tmplIds: ['gsX666KQ7V_7YJZe_mbpA8JgBSn2v0llvkZhHVwN2lM'],
      success: (res) => {
       // 获取当前这个模板id的状态
        let tempIdVal = res[gsX666KQ7V_7YJZe_mbpA8JgBSn2v0llvkZhHVwN2lM]
        if(tempIdVal == 'accept') {
          console.log('订阅成功');
        }
      },
      fail:(err)=> {
        // 点击取消
        console.log(err);
      }
    })

用户选择取消并勾选订阅消息的“总是保持以上选择,不再询问”时会不在弹出消息订阅弹窗,如何引导用户再次开启?

  • 使用getSetting获取用户是否选择了关闭了消息订阅
  • 弹出提示框引导用户点击确认时调起订阅消息弹窗
 wx.getSetting({
      withSubscriptions:true,
      success:(res) => {
        console.log(res);
        // 订阅消息的模板id对象(只在用户勾选'总是保存以上选项,,不再询问'时返回)
        let tempIdItem = res.subscriptionsSetting.itemSettings
        // 当前订阅模板id的状态
        let tempIdstatus = tempIdItem ? res.subscriptionsSetting.itemSettings.gsX666KQ7V_7YJZe_mbpA8JgBSn2v0llvkZhHVwN2lM : null
        // 勾选总是拒绝时
        if(tempIdstatus == 'reject') {
          wx.showModal({
            title:'提示',
            content:'检测到您没有开启订单发货通知的消息订阅,是否去设置?',
            success:(res) => {
              if (res.confirm) {
                console.log('用户点击确定')
                // 可再次调用订阅消息api
              } else if (res.cancel) {
                console.log('用户点击取消')
              }
            },
            fail:(err) => {
              console.log(err);
            }
          })
        }
      },
      fail:(err) => {
        console.log(err);
      }
    })
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值